测试用例设计方法(一)
上一篇 /
下一篇 2011-07-21 11:25:15
/ 个人分类:测试
测试用例的设计是对测试具体执行的一种详细设计,它是测试思维的集中反映。因此,不要过分地去追求测试用例的写作,而要更多的去考虑测试用例设计的方法及设计的思路。
一般常用的测试用例设计方法有以下几种:
l 等价类划分法
l 边界值分析法
l 基本路径分析法
l 因果图法
l 场景设计法
l 错误猜测法
另外,还有以下几种测试用例设计方法是用于有效减少测试用例个数的:
l 正交表法
l 均匀试验法
l 组合覆盖法
另外,分类树方法设计测试用例则更像一种辅助设计法。
下面,先介绍前两种方法:
1、 等价类划分法
等价类是指某个输入域的集合,在这个集合中每个输入条件都是等效的。等价类划分法认为:如果使用等价类中的一个条件作为测试数据进行测试不能发现程序的缺陷的话,那么使用等价类中的其他条件进行测试也不会发现错误。
等价类是典型的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。例如,一个计算三角形面积的程序,需要输入3条边的值,那么就可以考虑下面的等价类划分方法:
首先,从默认的规则出发,可以考虑A>0、B>0、C>0;然后,从三角形的特性考虑,可以划分成A+B>C、A+C>B、B+C>A;从其他不同的角度考虑,还可以列出更多的划分方式。
所有输入都可以划分成为两种等价类:
l 有效等价类
l 无效等价类
因此可利用画等价类表的方式来帮助划分等价类,如图1
等价类划分法的优点是考虑了单个输入域的各类情况,避免了盲目或者随机选取输入数据的不完整性和覆盖的不稳定性。
等价类划分的缺点是只考虑了输入域的分类情况,没有考虑输入的组合情况。如果仅仅使用等价类划分法,则可能会漏测一些情况。因此需要结合其他测试用例设计方法进行补充。
2、 边界值分析法
边界值分析法假设大多数的错误发生在各种输入条件的边界上,如果在边界附近的取值不会导致错误,那么其他取值导致出错的可能性也很小。
同样是前面的三角形的例子,如果把A>0的条件换成A>=0则可能触发程序的错误。
很多人在使用边界值分析法设计测试用例时,还喜欢结合前面讲的等价类划分法,例如,在上边界和下边界中间再取一个标准值。这样的话,对于一个范围为1~10的输入条件,可以用边界值分析法得到的以下输入数据:0,1,5,10,11。
边界值的取值依据输入范围区间不同而有所不同,但是都需要用到上点值,离点值和内点值,只是取点的位置不同。
如果是闭区间,如[1,10],取值如下:
l 上点:1,10
l 内点:5
l 离点:0,11
如果是开区间,如(1,10),取值如下:
l 上点:1,10
l 内点:5
l 离点:2,9
如果是半开半闭区间,如(0,10],取值如下:
l 上点:1,10
l 内点:5
l 离点:2,11
可参考图2,更容易理解
边界值分析法的优点是简单易用,只需要考虑单个输入边界附近的值,并且这种方法在很多时候能非常有效地揭露错误的方法。但是它与等价类划分一样,没有考虑输入之间的组合情况,因此需要进一步结合其他测试用例设计方法。
关于等价类划分详细讲解的文章:
http://www.51testing.com/html/68/n-97668.html
收藏
举报
TAG:
边界值分析法
测试用例设计
等价类划分法