测试基础 测试用例编写规范

focus · 2022年06月27日 · 最后由 陈恒捷 回复于 2022年06月29日 · 7531 次阅读

下面分享一波测试用例编写规范:

一、测试用例编写准备

从配置管理员处申请软件配置:《需求规格说明书》和《设计说明书》;根据需求规格说明书和设计说明书,详细理解用户的真正需求,并且对软件所实现的功能已经准确理解,然后着手制订测试用例。

二、测试用例制定的原则

测试用例要包括欲测试的功能、应输入的数据和预期的输出结果。测试数据应该选用少量、高效的测试数据进行尽可能完备的测试;基本目标是:设计一组发现某个错误或某类错误的测试数据,测试用例应覆盖方面:

1、正确性测试:输入用户实际数据以验证系统是满足需求规格说明书的要求;测试用 例中的测试点应首先保证要至少覆盖需求规格说明书中的各项功能,并且正常。

2、容错性(健壮性)测试:程序能够接收正确数据输入并且产生正确(预期)的输出, 输入非法数据(非法类型、不符合要求的数据、溢出数据等),程序应能给出提示 并进行相应处理。把自己想象成一名对产品操作一点也不懂的客户,在进行任意操作。

3、完整(安全)性测试:对未经授权的人使用软件系统或数据的企图,系统能够控制的程度,程序的数据处理能够保持外部信息(数据库或文件)的完整。

4、接口间测试:测试各个模块相互间的协调和通信情况,数据输入输出的一致性和正确性。

5、数据库测试:依据数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行测试。

6、边界值分析法:确定边界情况(刚好等于、稍小于和稍大于和刚刚大于等价类边界值),针对我们的系统在测试过程中主要输入一些合法数据/非法数据,主要在边界值附近选取。

7、压力测试:输入 10 条记录运行各个功能,输入 30 条记录运行,输入 50 条记录运行。。。进行测试。

8、等价划分:将所有可能的输入数据(有效的和无效的)划分成若干个等价类。

9、错误推测:主要是根据测试经验和直觉,参照以往的软件系统出现错误之处。

10、效率:完成预定的功能,系统的运行时间(主要是针对数据库而言)。

11、可理解(操作)性:理解和使用该系统的难易程度(界面友好性)。

12、可移植性:在不同操作系统及硬件配置情况下的运行性。

13、回归测试:按照测试用例将所有的测试点测试完毕,测试中发现的问题开发人员 已经解决,进行下一轮的测试。

14、比较测试:将已经发版的类似产品或原有的老产品与测试的产品同时运行比较,或与已往的测试结果比较 。
说明:针对不同的测试类型和测试阶段,测试用例编写的侧重点有所不同。

1、其中第 1、2、6、8、9、13 项为模块(组件、控件)测试、组合(集成)测试、系统测试都涉及并重点测试的方面。

2、单元(模块)测试(组件、控件)测试:重点测试第 5 项。

3、组合(集成)测试:重点进行接口间数据输入及逻辑的测试,即第 4 项。

4、系统测试:重点测试第 3、7、10、11、12、14 项。

5、其中压力测试和可移植性测试如果是公司的系列产品,可以选用其中有代表性的产品进行一次代表性测试即可。

6、GMPS 基础测试用例设计完成后,其他的测试项目只编写设计与之不同部分的测试用例。

7、对于每个测试项目测试的测试用例不是一成不变的,随着测试经验的积累或在测试其他项目发现有测试不充分的测试点时,可以不断的补充完善测试项目的测试用例。

三、测试用例的填写

一个软件系统或项目共用一套完整的测试用例,整个系统测试过程测试完毕,将实际测试结果填写到测试用例中,操作步骤应尽可能的详细,测试结论是指最终的测试结果(结论为:通过或不通过)。

共收到 13 条回复 时间 点赞

在所谓的敏捷开发过程中, 也需要提供详细操作的测试用例吗

对于每个测试项目测试的测试用例不是一成不变的,随着测试经验的积累或在测试其他项目发现有测试不充分的测试点时,可以不断的补充完善测试项目的测试用例。

是的,产品也不是一成不变的,测试用例应该及时调整

迭代越来越多,项目越做越大,用例该怎么搞啊?用例越来越多,回归一次时间很长!

Pactortester 回复

建议是回归用例不用太细,经过好几个版本都稳定的功能可以只包含主流程,一些 P3 级别的路径也只包含主流程。回归完了有空的话再随机探索测试下。

1、微服务架构,需要考虑服务异常测试
2、兼容性测试
3、弱网测试
4、并发测试

早上在公众号上看到过,文章是被盗了吗?

编写用例提及的覆盖范围挺广的,就是每一条写的太简单潦草了,比如这压力测试:压力测试:输入 10 条记录运行各个功能,输入 30 条记录运行,输入 50 条记录运行。。。进行测试。只是提及了数据量具体怎么去设计就太模糊了,如果涉及到性能,这个压测还是很重要的,先提这一点。

写🔨,就是点

上面内容象是测试类型的说明或介绍。
编码时我们要遵循变量定义的规则,变量名、函数名命名规则,等。同理,编写用例时,我们也需要定义一系列合适的规则,如用例的标题,预设条件,操作步骤,预期结果都要怎样的规则。

我感觉这个太偏向理论点了,在编写用例的时候,实际情况是针对需求来进行,而上面的这些理论如果按一个功能点来考虑,那编写的工作量太大,且很难维护。

jack 回复

太猛了😂

测试用例?甲方不要求,就不写。什么?甲方要求写了?那就随便写写糊弄吧

大概 8 年前第一家公司用的 testlink 写用例,写的就是这种有比较明确操作步骤的。然后每次功能有变动要加/改用例,1 天写 30-50 条用例基本是极限了。而且基本上写用例的人也是执行测试的人,其实执行的时候也不怎么细看当时写的用例的。

现在大部分是互联网行业,测试的基本是公司自己用的系统,不需要第三方审查必须出用例报告啥的。加上测试时间紧,需求变更频繁,所以基本都改成用脑图了。脑图写的测试点,基本上一天可以写几百个,效率高很多。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册