测试用例的概念
测试用例是为了实施测试而向被测试的系统提供的一组集合。
测试用例集合包括:测试环境、操作步骤、测试数据、预期结果等要素。

测试用例的总体设计是基于需求的设计测试用例。重点需要关注两个问题:(1)需求时都正确、完整、无二义,并且逻辑一致。(2)需要从“黑盒”角度出发,设计出测试集,保证能够完全符合需求。

下面是一些设计测试用例的具体方法

等价类

小明需要去超市买苹果
等价类:苹果、桃子、梨…
苹果可以满足小明的需求就代表无论是青苹果、红苹果这一类都可以满足小明的需求。

根据需求将输入划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,就说明等价类测试通过。

目的:利用较少的测试用例来尽量多的功能覆盖,解决不了穷举测试的问题。

等价类还分为有效等价类和无效等价类。
顾名思义有效等价类就是有效的等价类,对于需求规格说明书中所提的需求是合理的、有意义的测试用例的集合。无效等价类就是无效的等价类,也就是不满足需求的集合。

等价类只考虑了测试用例的分类,没有考虑测试用例的组合,因此需要搭配其他的设计方法。

边界值

小明需要去超市买水果,但是只有50块钱
0-50元的水果就满足小明的需求,超过50元的就不满足小明的需求

边界值分析法是对输入和输出的边界值进行测试的一种测试方法。边界值分析法可以作为等价类划分法的一个补充。

例子:
测试输入框内容的长度,要求长度为1-11
边界值:0、1、11、12

因果图

因果图是简化的逻辑图,能够直观的看出程序的输入条件和输出条件之间的相互关系。适用于被测试程序具有多种输入条件、程序的输出又依赖于输入条件的各种情况。

四种关系:
恒等:如果原因为真,那么结果一定也是真。
图示:
在这里插入图片描述

与:只有所有原因为真,那么结果才能为真。
图示:
在这里插入图片描述
或:只要所有的条件中有一个条件为真时,那么结果就为真。
图示:
在这里插入图片描述
非:如果原因为假,那么结果一定为真。
图示:
在这里插入图片描述

因果图法设计测试用例的步骤:
(1)分析所有可能的输入和输出
(2)找出输入和输出之间的对应关系
(3)画出因果图
(4)把因果图转换为判定表
(5)将判定表对应到测试用例中

例:某个购物软件的促销日,发出了一个优惠活动,凡是订单合计金额大于300元或者是有红包的,则可以享受优惠。

(1)分析所有可能的输入和输出
输入:订单已提交、金额大于300、有红包
输出:优惠、不优惠
(2)找出输入和输出之间的关系
订单已提交、金额大于300,有优惠
订单已提交、金额小于等于300、有红包,有优惠
订单已提交、有红包,有优惠
订单已提交、金额大于300、有红包、有优惠
订单未提交、没有优惠
(3)画图因果图
在这里插入图片描述
(4)画判定表
在这里插入图片描述
(5)最终的测试用例

正交设计法

正交设计法是根据正交性,由试验因素的全部水平组合中挑选部分有代表性的用例进行测试,通过这部分试验结果的分析了解全面试验的情况,找出最优的水平组合。

因素:在一项试验中,所有需要考察的变量
水平:在试验范围内,因素被考察的值成为水平

正交表的构成:
列数:因素数(c,输入的个数)
水平数:单个因素能取到的最大个数(T)
行:正交表的行的个数 L=(水平数-1)*因素数+1

正交表的两个性质:
每一列中各数字出现的次数一样多。
任何两列所构成的各有序数对出现的次数都一样多

正交表设计测试用例的步骤:
(1)确定因素数
(2)确定水平数
(3)根据因素数和水平数确定行和列
(4)制作正交表
(5)根据表中的每一行设计测试用例
(6)补充表中没有但是应该有的测试用例

场景设计法

把每个孤立的功能点按照一定的策略组合起来,形成一个应用场景

错误猜测法

根据测试人员的知识、经验去推理出可能出现的问题的功能模块,有针对性的设计测试用例。

以上的这些具体的设计测试用例的方法都是黑盒测试。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐