测试用例简单来说就是指导如何做测试的文档,一份高质量的测试用例,能防止测试过程出现遗漏,提高工作效率。本文主要与大家分享一些设计测试用例的方法及其运用场景。
说到设计测试用例,我们熟知的方法有等价类划分法,边界值分析法,场景法,决策表法,因果图法,错误推断法。很多人只是知道这些方法,每个方法要运用在何处,如何结合起来就懵了。下面我们就分别来看看每个方法。
等价类划分法
顾名思义,就是指将界面上的输入框的输入域看成一个大饼,然后又根据某方面输入值之间等价性进行划分,再而从每个等价域中选取少量具有代表性的数据做为测试用例的输入数据。每个等价类值又根据是否对程序有无作用,而分为有效等价类和无效等价类。
等价类划分法让测试成为可能。举个例子,比如说我们测试手机号输入框,如果没有等价类划分,那么是不是就要把所有的情況穷举一次。有了等价类划分,我们至少可以把它们归类。比如手机号可以分为有效和无效,而无效可以分为长度无效,规则无效,输入的字符不规范等等。
案例:
某城市电话号码由3部分组成,地区码-前缀-后缀,其中,
地区码:空白或三位数字
前缀:起始位非“0”“1”的三位数字
后缀:4位数字
划分等价类如下,再根据有效等价类和无效等价类组合,即可设计出测试用例。
边界值分析法
边界值分析法就是对输入或输出的边界值进行测试的方法。
边界值分析法常用于对等价类划分法完成之后作的补充,所以边界值其实是在等价类的边缘去寻找错误原因。程序的大量错误是发生在输入或输出范围的边界上的,而不是在输入范围的内部,因此,针对各种边界情况设计测试用例,通常会取得很好的测试效果。
场景法
场景法主要用于测试软件的业务过程或业务逻辑,测试人员需模拟用户操作软件时的各种场景。
很多时候,我们测试的是一个完整的项目,那么在梳理业务流程的时候,就会用到场景法,用场景法梳理出基本流,备选流,之后再结合每一个流做细化的等价类划分和边界值分析。
决策表法
决策表就是把作为条件的所有输入的各种组合值和它对应的输入值都罗列出来而形成的表格。
一般是遇到输入和输出之间相互制约的条件比较多并且有关联关系的时候会用到,将业务之中有关联关系的地方使用决策表梳理出来,再结合决策表的每一项做等价类边界值细化的测试。
决策表的一般形式:
因果图法
因果图是一种简化了的逻辑图,能直观的表明程序输入条件和输出动作之间的相互关系,适用于被测试程序具有多种输入条件,程序的输出又依赖于输入条件的各种情况。
因果图不太常用,本身因果图其实是为了得到决策表。
错误推断法
错误推断法就是基于经验和直觉推测程序中所有可能存在的各种错误,有针对性地设计测试用例的方法。
经常用于我们测试过程中,需要结合软件实际的情况,有针对性的猜测会出现问题的地方,针对性地设计用例。
总结
在拿到一个需求文档时,我们可以先用场景法梳理清楚软件的基本流和备选流,再结合等价类法、边界值分析法分析测试用例。当输入输出有对应关系时,先梳理出决策表,再结合等价类和边界值进行分析。如果遇到特别复杂的,可以利用因果图来梳理决策表。最后就是根据自己对软件缺陷的知识积累,采用错误推断法来设计出测试用例。