测试用例设计--等价类划分

1、为什么要用等价类划分来设计测试用例?

保证被测对象测试充分性最好的方法是穷举法完全覆盖。但实际的测试活动中会受项目实施的时间、成本、范围、风险很多因素的限制。等价类划分可以减少穷去法带来的大量测试用例,保证测试效果的同时提升测试效率。

2、等价类划分是什么?

对于测试而言,等价类是某个测试对象的输入域的集合,在集合中单个个体对于揭露测试对象缺陷的效果是等价。

有效等价类:针对被测对象需求规格说明而言,有意义的、有效的测试输入集合

无效等价类:针对被测对象需求规格说明而言,无意义的,无效的测试输入集合

测试用例之所以要考虑两种等价类,是因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试能保证软件具有好的可靠性。

3、怎么用等价类划分来进行测试用例的设计?

两大步:等价类划分和测试用例的设计

注意:考虑每个条件,不可若干条件一起考录,否则会很凌乱。单独考虑各自的有效和无效等价类即可。

具体步骤:

一、根据需求规格说明书确定被测对象的输入域的有效等价类和无效等价类

二、将被测对象的输入域的有效等价类和无效等价类统一进行编号

三、设计一个新的测试用例,使其尽可能多的覆盖尚未覆盖的有效等价类,直至所有的有效等价类覆盖完全,互斥的有效等价类需单独覆盖

四、设计一个新的测试用例,使其覆盖仅覆盖一个尚未覆盖的无效等价类,直至所有的无效等价类覆盖完全

五、补充测试用例

4、等价类划分设计测试用例的优缺点?

优点:等价类划分的测试用例设计方法减少了穷举法带来的大量测试用例,保证测试效果和测试效率,一般用于输入性需求的被测对象可以才采用等价类划分的设计法

缺点:输入与输入之间的关系考虑少。可能产生一些逻辑错误

5、常见等价类划分法的实例分析

实例一:网站登录

 

等价类划分并编号

测试用例设计(由于测试用例多只列举一条注册成功的测试用例,一条失败的测试用例和一条补充的测试用力)

实例二:三角形

某程序规定:“输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形、等边三角形时,分别做计算。。。”用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)

思路

测试一个图形是不是三角形,需考虑到三角形的性质要求如下:

A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。

如果是等腰的,还要判断A=B,或B=C,或A=C。

如果是等边的,则需判断是否A=B,且B=C,且A=C。

 

你可能感兴趣的