测试用例的基本要素
1. 测试用例的基本要素:测试环境,操作步骤,测试数据,预期结果
2. 测试用例的三大好处:
1)可以评估需求的覆盖率
2)可以重复使用(做回归测试的时候)
3)后辈借鉴学习
测试用例的设计方法
测试用例的总体设计方法-----基于需求的设计方法
基于需求设计测试用例的前提:要保证我们需求的正确性和完整性,逻辑要一致(验证需求),需求分为用户需求和软件需求
具体的六大设计方法
1. 等价类
把输入(特殊的情况下考虑输出)划分成若干个等价类,从每一个等价类当中提取一个测试用例进行测试,如果该例通过,那么就说该测试用例代表的等价类测试通过。
解决了输入很多,无法穷举的一种情况
等价类又分为有效等价类和无效等价类:
有效等价类:符合程序规格说明书的有意义的值,叫做有效等价类
无效等价类:根据程序规格说明书不满足需求的集合
比如说if(x>21)…,里面的有效等价类是x>21,无效等价类是x<=21
练习:
手机号位数(11位)划分等价类
有效等价类: 手机号位数==11且非0开头
无效等价类:(1)手机号位数<11,(2)或>11,(3)手机号以0开头
2. 边界值
针对输入输出的边界进行测试用例的设计
临界点周围的值和临界点本身
比如说:6~18位,此处的边界值应该是0,5,6,7,17,18,19
一般边界值和等价类方法用在一起设计测试用例
3. 因果图
因果图是一种逻辑图
有多个输入,输出和不同输入的组合之间有关系,就可以使用因果图法设计测试用例
因果图有:
因果图法设计测试用例的步骤:
1)找出所有的输入和输出
2)找出输入和输出之间的关系
3)根据输入输出之间的关系画因果图
4)根据因果图画判定表
5)根据判定表设计测试用例
练习题:618活动,订单已提交,订单金额大于300或者有红包,则有优惠
(1)所有输入和输出
输入:
1. 订单已提交,订单金额大于300,有红包(不只包含一个测试用例)
2. 订单未提交,订单金额小于300,无红包(不只包含一个测试用例)输出:
1. 优惠
2. 不优惠
(2)输入和输出之间的关系
订单未提交,无优惠订单已提交,订单金额大于三百,有优惠订单已提交,有红包,有优惠订单已提交,金额大于三百且有红包,有优惠订单已提交,订单金额小于三百且没有红包,无优惠
(3)根据输入输出之间的关系画因果图
(4)判定表
(5)测试用例
判定表中每一个竖行都是测试用例
① 订单已提交,金额>300,有红包,有优惠
② 订单已提交,金额>300,无红包,有优惠
③ 订单已提交,金额<=300,有红包,有优惠
④ 订单已提交,金额<=300,无红包,无优惠
⑤ 订单未提交,金额>300,有红包,无优惠
⑥ 订单未提交,金额>300,无红包,无优惠
⑦ 订单未提交,金额<=300,有红包,无优惠
⑧ 订单未提交,金额<=300,无红包,无优惠
4. 正交法
研究多因素(输入)多水平(每个因素取值)的一种测试用例的设计方法,取出多个水平的最优组合,通过研究这些组合最后的实验结果来分析我们这个实验结果
因素:输入
水平:每个因素的取值
水平数:每个因素取值的个数
正交表的列数:因素数
正交表的行数:(水平数-1)* 因素数
问题:如何去选择一个合适的正交表(最优组合)?
正交表的列数:因素数
正交表的行数:(水平数-1)* 因素数
正交表的性质:
每一列中的各情况出现的次数都一样多任何两列所构成的各有序数对出现的次数都一样多
练习:用邮箱注册,姓名,邮箱,密码,确认密码,验证(只考虑输入和不输入两种情况)
只要满足正交表的两条性质就可以,每个人都写得不一样
注意:
根据正交表写测试用例的时候,因为正交表中的测试用例只是多个水平的最优组合,所以写测试用例的时候还要根据自己的经验补充特殊的测试用例,
比如说这个题中补充名字,邮箱等信息都填写和都不填写两种特殊的测试用例
5. 场景设计法
现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。
该方法可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,使测试用例更容易理解和执行。
典型的应用是是用业务流把各个孤立的功能点串起来,为测试人员建立整体业务感觉,从而避免陷入功能细节忽视业务流程要点的错误倾向
6. 错误猜测法
…这个就是凭经验和直觉,一般经验丰富的测试人员喜欢使用
如果觉得《【软件测试】测试用例相关知识(六大测试用例设计方法)》对你有帮助,请点赞、收藏,并留下你的观点哦!