编写测试用例的七种方法
1 测试用例的概念
测试用例是为了实施测试而向被测试系统提供的一组集合,这组集合包括:测试环境、操作步骤、测试数据、预期结果等要素
2 常见编写测试用例的七种方法
基于需求的设计方法
等价类
边界值
因果图
场景设计法
错误猜测法
3 基于需求的设计方法
定义:依据看客户需求设计测试用例,但是在设计的过程中一定要辩证的看待需求(即:需求不一定都是正确的)
4 等价类法
(1)定义:依据需求将输入划分为若干等价类,从等价类中选定一个测试用例,如果该测试用例通过,则表明整个等价类通过测试。
(2)适用场景:对于等价类这个方法,一般适用于有无限多种输入,我们不可能完成穷举测试,等价类可以使我们用较少的测试用例尽可能多的将功能覆盖。
(3)有效等价类和无效等价类
一般划分为:有效等价类、无效等价类
有效等价类:有意义的输入构成的集合,对于需求规格说明书是合法的;
无效等价类:不满足需求的集合。
5 边界值法
(1)定义:边界值法是对输入数据的边界测试,是一种黑盒测试方法;一般来说边界值法是对等价类划分后的补充
(2)例:对于设定密码的测试,要求密码必须为6-15位
分析过程:有效等价类为>=6 && <=15 无效等价类为:<6 || >15
设定边界值:5、6、10、15、16
边界值选定解释:
A. 6和15作为有效等价类中的内容,又是边界值,可以判定有效等价类的内容是否满足要求
B. 但是6和15又很特殊,它不仅代表了有效等价类,还代表了边界值,所以我们选定一个普通的有效等价类作为一个测试用例,如:10
C. 5和16作为无效等价类中的内容,又是边界值(比4或者17更具有代表性),可以判定无效等价类的内容
6 因果图
(1)定义:因果图是一种简化的逻辑图,能够表示输入条件和输出结果之间的关系。
(2)认识因果图的表示方法:恒等、与、或、非
一般在使用因果图编写测试用例的时候,因果图不一定能把所有的情况含括进去,所以在因果图之后,我们可以通过画判定表来确定最终的测试用例。
7 正交排列
(1)定义:正交法的目的使为了减少用例的数量,用尽量少的测试用例覆盖输入的两两组合。
(2)正交表的两条性质:A. 每一列中各数字出现的次数都一样多(不考虑顺序)
B. 任何两列所构成的有序对的次数都一样多
(3)两个概念:
A. 因素:在一次实验中所需要考察的变量
因素数:因素的个数(即,正交表中列的个数),用C表示
B. 水平:在实验范围内,因素被考察的取值
(4)计算正交表的行数:C*( T-1 ) + 1
(5)用正交排列编写测试用例的流程:
A. 分析该场景下有哪些因素,因素数为多少;
B. 分析该场景下有哪些水平,水平数为多少;
C. 计算正交表的行数,选择合适的正交表;
D. 依据正交表的两条性质,生成正交表;
E. 分析正交表中的测试用例,如果有不全的情况,增补测试用例。
8 场景设计
定义:目前的大多数软件的事件触发来控制流程的,我们可通过想象事件触发时的情景形成流程,依据同一事件不同的触发顺序和结果形成事件流,再依据事件流设计测试用例。
一般场景设计法与需求设计法结合使用,能够将多个孤立的功能联系在一起。
9 错误猜测法
定义:错误猜测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例。列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。