美文网首页
07测试用例设计方法【黑盒-等价类划分法】

07测试用例设计方法【黑盒-等价类划分法】

作者: SHARE李 | 来源:发表于2019-06-10 16:11 被阅读0次

黑盒测试用例设计方法-等价类划分法

等价类划分法:

等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,它们具有等价特性,即每一类的代表性数据在测试中的作用都等价于这一类中的其它数据。这样,对于表征该类的数据输入将能代表整个子集合的输入。因此,可以合理的假定:
测试某等价类的代表值就是等效于测试这一类的其它值。
即如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误。
等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
定义:
将被测程序的输入域(输入数据)划分为若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例中数据。
如何划分:
先从程序的规格说明书中找出各个输入条件,再为每个输入条件划分两个或多个等价类,形成若干的互不相交的子集。
软件不能只接收合理有效的数据,也要具有处理异常数据的功能,这样才能确保软件具有更高的可靠性。因此,在划分等价类的过程中,不但要考虑有效等价类划分,也要考虑无效等价类划分。
所以划分等价类可分为两种情况:
(1)有效等价类
——是指对软件规格说明而言,是有意义的、合理的输入数据所组成的集合。利用有效等价类,能够检验程序是否实现了规格说明中预先规定的功能和性能。
(2)无效等价类
——是指对软件规格说明而言,是无意义的、不合理的输入数据所构成的集合。利用无效等价类,可以鉴别程序异常处理的情况,检查被测对象的功能和性能的实现是否有不符合规格说明要求的地方。
划分依据:
(1)按照区间划分
在输入条件规定了取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类。
例1:在程序的规格说明书中,对输入条件有这么一句话:“程序输入条件为大于10小于100的实数x”
则有效等价类为10<x<100,两个无效等价类为x≤10和x≥100。
例2:规格说明书要求:学生允许选修5到8门功课,
则可得到一个有效等价类为:选课5到8门,两个无效等价类为:选课不足5门和选课超过8门。
**(2)按照数值划分 **
在规定了一组输入数据(假设包括n个输入值),并且程序要对每一个输入值分别进行处理的情况下,可确定n个有效等价类(每个值确定一个有效等价类)和一个无效等价类(所有不允许的输入值的集合)。
例:程序输入x取值于一个固定的枚举类型{1,3,7,15},且程序中对这4个数值分别进行了处理,则
有效等价类为x=1、x=3、 x=7、x=15,
无效等价类为x≠1,3,7,15的值的集合。
(3)按照数值集合划分
在输入条件规定了输入值的集合或规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类(该集合有效值之外)。
例1:程序输入条件为取值为奇数的整数x,则有效等价类为x的值为奇数的整数,无效等价类为x的值不为奇数的整数。
例2:某软件设计标识符,要求“标识符应以字母开头”,则“以字母开头”者作为一个有效等价类,“以非字母开头”者作为一个无效等价类。
**(4)按照限制条件或规则划分 **
在规定了输入数据必须遵守的规则或限制条件的情况下,可确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
例:程序输入条件为以字符‘a’开头、长度为8的字符串,并且字符串不包含‘a’-‘z’之外的其它字符,则有效等价类为满足了上述所有条件的字符串,无效等价类为不以‘a’开头的字符串、长度不为8的字符串和包含了‘a’-‘z’之外其它字符的字符串。
(5)细分等价类
在确知已划分的等价类中各元素在程序中的处理方式不同的情况下,则应再将该等价类进一步划分为更小的等价类,并建立等价类表。

等价类划分法设计测试用例:

在确立了等价类之后,建立等价类表,列出所有划分出的等价类,如表3-1所示


3-1 等价类表.png

在设计测试用例时,应同时考虑有效等价类和无效等价类测试用例的设计。
根据已列出的等价类表可确定测试用例,具体过程如下:
(1)首先为等价类表中的每一个等价类分别规定一个唯一的编号。
(2)设计一个新的测试用例,使它能够尽量覆盖尚未覆盖的有效等价类。重复这个步骤,直到所有的有效等价类均被测试用例所覆盖。
(3)设计一个新的测试用例,使它仅覆盖一个尚未覆盖的无效等价类。重复这一步骤,直到所有的无效等价类均被测试用例所覆盖。

等价类测试分类:

(1)基于覆盖程度:
弱组合形式:测试用例仅需满足对等价类的完全覆盖
强组合形式:测试用例不仅满足对等价类的完全覆盖,而且应覆盖所有的等价类组合
(2)基于检测无效等价类:
一般等价类测试:只考虑有效等价类 (测试用例使用每个等价类中的一个值。)
健壮等价类测试:考虑有效、无效等价类 (对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个无效值,其他值均取有效值。)
健壮等价类测试存在两个问题:
需要花费精力定义无效测试用例的期望输出、对强类型的语言没有必要考虑无效的输入
基于以上分类组合:
1、弱一般等价类测试
2、强一般等价类测试
3、弱健壮等价类测试
4、强健壮等价类测试
假设,F实现为一个程序,且输入变量x1和x2的边界以及边界内的区间:
a ≤ x1 ≤ d,区间为[a,b),[b,c),[c,d]
e ≤ x2 ≤ g,区间为[e,f),[f,g]
弱一般等价类测试:

image.png
强一般等价类测试: image.png
弱健壮等价类测试: image.png
强健壮等价类测试: image.png

案例:

1)城市电话号码由三部分组成。它们的名称和内容分别是:
地区码:空白或三位数字;
前 缀:首位非‘0’或‘1’的三位数字;
后 缀:4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。根据该程序的规格说明,作等价类的划分,并设计测试方案。

等价类表.png
测试用例.png
2)某保险公司的人寿保险的保险费率依点数不同而有别,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则如下: image.png
请使用等价类划分法列出输入域等价类表,并设计相应的测试用例。
等价类表.png
测试用例.png
3)在三角形问题中,输入的数值必须满足3个条件:整数、3个数的取值在1—100之间。
等价类表.png
测试用例(不考虑输出结果).png
测试用例(考虑输出结果).png
完整测试用例.png

相关文章

  • 测试流程之如何设计测试用例

    前言 在功能测试中测试人员使用的测试用例设计方法大多都是黑盒用例设计方法,黑盒用例设计方法有其中又以等价类划分法、...

  • 07测试用例设计方法【黑盒-等价类划分法】

    黑盒测试用例设计方法-等价类划分法 等价类划分法: 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭...

  • 测试用例

    测试用例设计方法 测试用例常用设计方法有:黑盒:等价类划分法,边界值法 ,因果图法,场景法,错误推断法白盒:基本路...

  • 黑盒测试

    等价类划分法 等价类划分法是黑盒测试用例设计中一种重要常用的设计方法,它的基本思想是用一组有限的数据去代表近似无限...

  • 测试用例设计方法

    一,等价类 等价类测试用例设计方法是一种典型的黑盒测试用例设计方法,使用该方法主要对测试子项进行测试规格分析,进而...

  • 07测试用例设计方法【黑盒-边界值分析法】

    黑盒测试用例设计方法-边界值分析法 边界值分析法一般是对等价类划分法的补充【边界值分析法】对被测程序的输入域或输出...

  • 软件测试面试题 总结 (3)

    1 常见的黑盒测试方法/常见的测试用例设计方法 等价类划分法、边界值分析法、错误推测法、因果图测试法、 场景法、功...

  • 等价类划分法

    黑盒测试用例设计方法包括等价类划分法、边界值分析法、错误推测法、因果图法、判定表驱动法、正交试验设计法、功能图法等...

  • 黑盒测试用例设计

    一、常用黑盒测试用例设计方法 等价类划分法 边界值分析法 判定表法 因果图法 状态迁移图法 流程分析法 正交试验法...

  • 等价类划分法

    等价类是一种典型的黑盒测试用例设计方法。根据输入条件、输入值或输入个数等分为有效等价类和无效等价类。在有效等价类中...

网友评论

      本文标题:07测试用例设计方法【黑盒-等价类划分法】

      本文链接:https://www.haomeiwen.com/subject/yaaaxctx.html