03等价类划分

03等价类划分

1等价类划分的定义***

  • 等价类是指某个输入域的子集合。在该子集合 中,各个输入数据对于揭露程序中的错误都是等效的,具有等价特性。
  • 一个等价类或等价类划分是指测试相同目标或 者暴露相同软件缺陷的一组测试用例
  • 等价类测试方法是把所有可能的输入数据,即 程序的输入域划分成若干部分,然后从每一部 分中选取少数有代表性的数据作为测试用例
  • 对测试的意义:完备性和无冗余性

2等价类的类型划分***

等价类划分可有两种不同的情况:有效等价类和无效等价类

  • 有效等价类
    • 是指对于程序的需求规格说明来说是合理的,有意义的输入数据构成 的集合。
    • 利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性 能(确认过程)。 ***
  • 无效等价类(与有效等价类的定义恰巧相反)
    • 是指对于程序的需求规格说明来说是不合理的,无意义的输入数据构 成的集合。
    • 利用无效等价类可检验程序对于无效数据的异常处理能力(检验过 程)。 ***

设计测试用例时,要同时考虑这两种等价类。因为,软件不仅要能接 收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具 有更高的可靠性。

3等价类测试用例的类别

  • 弱等价类测试
    • 弱一般等价类测试
    • 弱健壮等价类测试
  • 强等价类测试
    • 强一般等价类测试
    • 强健壮等价类测试

4健壮性测试***

健壮性有两层含义:容错能力恢复能力

容错性测试通常构造一些不合理的输入来引诱软件错误

例如:

  • 输入错误的数据类型:如“猴”年“马”月
  • 输入定义域之外的数值
  • 粗暴一些方式俗称“大猩猩”测试法。除了不能拳打脚踢嘴咬之外,什么招术都可以使出来。例如在测试客户机服务器模式的软件时,把网线拔掉,造成通信异常中断。

恢复测试重点考察以下几项:***

  • 系统能否重新运行
  • 有无重要的数据丢失
  • 是否毁坏了其他相关的软件硬件

5弱一般等价类

  • 遵循单缺陷原则,要求用例覆盖每一个变量的 一种取值即可,取值为有效值。

03-1

6弱健壮等价类

  • 在弱一般等价类的基础上,增加取值为无效值的情况
  • 对于有效输入,使用每个有效值类的一个值
  • 对于无效输入,测试用例将拥有一个无效值, 并保持其余的值是有效的

03-2

7强一般等价类

  • 遵循多缺陷原则,要求用例覆盖每个变量的每种取值之间的笛卡尔乘积,即所有变量所有取值的所有组合,取值为有效值
  • 覆盖所有的等价类
  • 有可能的输入组合中的一个

03-3

8强健壮等价类

  • 在强一般等价类的基础上,增加取值为无效值 的情况
  • “健壮”考虑无效值,所有等价类都有考虑
  • “强”多缺陷假设

03-4

9等价类划分的原则***

  • 按照区间划分
  • 按照数值划分
  • 按照数值集合划分
  • 按限制条件或规则划分
  • 细分等价类
1按照区间划分

在输入条件规定了取值范围或值的个数的情况下,则可以 确立一个有效等价类和两个无效等价类

例子:淘宝购物时,数量库存为209件

  • 有效等价类:0<并≤209,如1,10等
  • 无效等价类:0≤ 或 >209,如-1,210等
  • 弱一般等价类:1~209中任意一个数为测试数 据,只设计1个用例即可
  • 强一般等价类:分为1、 2~208、 209三个等 价类,需要设计3个用例
  • 弱健壮等价类:在弱一般的基础上增加一个无 效等价类的测试,即1,-1两个等价类
  • 强健壮等价类:考虑各种非法输入,如负数、 其他字符等等
2按照数值划分

在规定了输入数据的一组值(假定n个),并且 程序要对每一个输入值分别处理的情况下,可 确立n个有效等价类和一个无效等价类。

例子:输入条件说明输入学历为本科、硕士和 博士3种之一

  • 有效等价类:本科、硕士和博士其中一种
  • 无效等价类:除要求的3种外其他字符,如小 学、专科等
3按照数值集合划分

在输入条件规定了输入值的集合或者规定了 “必须如何”的条件的情况下,可确立一个有 效等价类和一个无效等价类。

例子:密码输入框,要求密码必须是数字或字 母

  • 有效等价类:密码是数字和字母的组合(还可以细分)
  • 无效等价类:密码包括中文、密码包括其他符号等
4按限制条件或规则划分

在规定了输入数据必须遵守的规则的情况下, 可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

例子:校内电话号码拨外线为9开头

  • 有效等价类:9+外线号码
  • 无效等价类:非9开头+外线号码,9+非外线号码等

10等价类划分法的测试用例应用

  1. 按照[输入条件][有效等价类][无效等价类] 建立等价类 表,列出所有划分出的等价类

03-5

  1. 为每一个等价类规定一个唯一的编号。

  2. 设计一个新的测试用例,使其尽可能多地覆盖尚未被 覆盖地有效等价类,重复这一步,直到所有的有效等价类 都被覆盖为止。

  3. 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖 的无效等价类,重复这一步,直到所有的无效等价类都被 覆盖为止。

等价类划分法的实例分析

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

(答案网上找)

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
等价划分是软件测试中常用的一种测试设计方法,通过将测试用例分为不同的等价类,以确保测试用例的全面性和有效性。等价划分的基本原则是将输入空间划分为有限数量的等价类,使得每个等价类中的测试用例具有相同的测试效果,即如果一个测试用例能够代表某个等价类的情况,那么其他测试用例也能够代表该等价类的情况。 等价划分的步骤如下: 1. 理解需求:首先要对软件系统的需求和功能有一个清晰的理解,以确保能够准确的划分等价类。 2. 识别输入域:确定待测试的输入域,即需要进行等价划分的输入数据。 3. 划分等价类:根据输入域的特征和功能需求,将输入域划分为一组等价类。每个等价类都应具有相同的测试效果,并尽量确保划分等价类数量尽可能少。 4. 选择测试用例:从划分等价类中选择一组测试用例进行测试。通常,每个等价类应至少包含一个测试用例,以确保能够覆盖该等价类的所有可能情况。 5. 执行测试用例:按照测试用例进行测试,记录测试结果,并进行缺陷的修复和验证。 等价划分的好处是可以通过有限数量的测试用例来覆盖大部分输入情况,从而节省测试时间和成本。同时,等价划分也能够发现输入域中的边界问题和异常情况,提高测试的全面性和准确性。 总之,等价划分是一种简单有效的测试设计方法,能够帮助测试人员合理划分测试用例,提高测试的效率和有效性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值