测试用例设计方法的综合运用
作者:网络转载 发布时间:[ 2012/3/7 14:20:42 ] 推荐标签:
测试用例是按一定的顺序执行的与测试目标相关的测试活动的描述,是确定“怎样”测试。测试用例被看作是有效发现软件缺陷的小测试执行单元,也被视为软件的测试规格说明书。在测试工作中,测试用例的设计是非常重要的,是测试执行的正确性、有效性的基础。如何有效地设计测试用例,一直是测试人员所关注的问题;设计好测试用例,也是保证测试工作的关键的因素之一。
设计测试用例,也分为白盒设计方法和黑盒设计方法。白盒设计方法又分为逻辑覆盖法和基本路径覆盖法,或者分为语句覆盖、判定覆盖、条件覆盖方法,而黑盒设计方法分为等价类划分法、边界值划分法、错误推测法、因果图法等。在实际测试用例设计过程中,不仅根据需要、场合单独使用这些方法,常常综合运用多个方法,使测试用例的设计更为有效。
1.判定-条件覆盖方法
判定-条件覆盖方法是将两种白盒设计方法“判定覆盖”和“条件覆盖”结合起来的一种设计方法,它所设计的测试用例是判定覆盖的设计的测试用例和条件覆盖设计的设计的测试用例的交集,即设计足够精巧的测试用例,使得判断条件中的所有条件可能取值至少执行一次,同时,所有判断的可能结果也至少执行一次。
举个例子,源程序是:
Dim a,b as Integer
Dim c as Double
If(a > 0 and b > 0)Then
c = c/ a
End If
If(a>1 or c>1)Then
c=c+1
End If
c=b+c
则用两个测试用例(如表1)来覆盖了两个判定“P1=(a > 0 and b > 0)”和“P2 =(a>1 or c>1)”和四个条件“C1= a > 0”、“C2= b > 0”、“C3= a>1”和“C4= c>1”。
表1判定-条件覆盖的测试用例
测试用例 具体取值条件 取值条件 判定条件
输入:a=2,b=1,c=6 输出:a=2,b=1,c=5 a>0,b>0,a>1,c>1 C1, C2, C3, C4 = True P1, P2= True
输入:a=-1,b=-2,c=-3 输出:a=-1,b=-2,c=-5 a<=0,b<=0,a<=1,c<=1 C1, C2, C3, C4 = False P1, P2= False
2.条件组合覆盖
条件组合覆盖的基本思想是:设计足够的测试用例,使得判断中每个条件的所有可能至少出现一次,并且每个判断本身的判定结果也至少出现一次,条件覆盖是简单地要求每个条件出现“真”与“假”两种结果,而条件组合覆盖是让这些结果的所有可能组合都至少出现一次。
按照条件组合覆盖的基本思想,针对8种组合条件,来设计所有能覆盖这些组合的设计用例,如表2所示。即使我们用四个测试用例覆盖了所有8种组合条件,但还不能保证所有的路径被执行,如这个例子少了一种路径,即P1= True, P2= false。
表2条件组合覆盖的测试用例
测试用例 覆盖条件 覆盖组合
输入:a=2,b=1,c=6 输出:a=2,b=1,c=5 ① C1=True, C2=True,⑤ C3=True,C4=True P1=True, P2=True
输入:a=2,b=-1,c=-2 输出:a=2,b=-1,c=-3 ② C1=True, C2=false,⑥ C3=True,C4=false P1=false, P2=True
输入:a=-1,b=2,c=3 输出:a=-1,b=2,c=6 ③ C1=false, C2=True,⑦ C3=false,C4=True P1=false, P2=True
输入:a=-1,b=-2,c=-3 输出:a=-1,b=-2,c=-5 ④ C1=false, C2=false,⑧ C3=false,C4=false P1=false, P2=false
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11