等价类划分法的步骤和示例

  • 1、等价类划分法的介绍和概念
  • 2、等价类的类型划分
  • 3、等价类测试用例的类别
    • 3.1弱一般等价类
    • 3.2弱健壮等价类
    • 3.3强一般等价类
    • 3.4强健壮等价类
  • 4、等价类划分的原则
    • 4.1按照区间划分
    • 4.2按照数值划分
    • 4.3按照数值集合划分
    • 4.4按限制条件或规则划分
    • 4.5细分等价类
  • 5、等价类划分法的测试用例应用
  • 6、等价类划分法的实例分析

1、等价类划分法的介绍和概念

划分
指互不相交的一组子集,这些子集的并是整个集合。

对测试的意义:完备性和无冗余性。

等价类
等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,具有等价特性。

等价类合理地假设
测试某等价类的代表值就等于对这一类其它值的测试。

等价类划分
等价类划分是一种典型的黑盒测试方法。

等价类测试方法是把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。使用等价类划分方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。

2、等价类的类型划分

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

有效等价类
是指对于程序的需求规格说明来说是合理的,有意义的输入数据构成的集合。

利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能(确认过程)。

无效等价类(与有效等价类的定义恰巧相反)
是指对于程序的需求规格说明来说是不合理的,无意义的输入数据构成的集合。

利用无效等价类可检验程序对于无效数据的异常处理能力(检验过程)。

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

3、等价类测试用例的类别

根据测试用例的完整性可以划分

弱等价类测试
弱一般等价类测试
弱健壮等价类测试
强等价类测试
强一般等价类测试
强健壮等价类测试
PS:健壮性测试

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

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

恢复测试重点考察以下几项:
•系统能否重新运行;
•有无重要的数据丢失;
•是否毁坏了其他相关的软件硬件。

3.1弱一般等价类

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

3.2弱健壮等价类

在弱一般等价类的基础上,增加取值为无效值的情况。

对于有效输入,使用每个有效值类的一个值

对于无效输入,测试用例将拥有一个无效值,并保持其余的值是有效的。

3.3强一般等价类

遵循多缺陷原则,要求用例覆盖每个变量的每种取值之间的迪卡尔乘积,即所有变量所有取值的所有组合,取值为有效值

覆盖所有的等价类

有可能的输入组合中的一个

3.4强健壮等价类

在强一般等价类的基础上,增加取值为无效值的情况。

“健壮”考虑无效值,所有等价类都有考虑

“强”多缺陷假设

4、等价类划分的原则

4.1按照区间划分

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

例子:输入值是学生成绩,范围是0~100之间

image

有效等价类:0≤并≤100,如0,1,10等

无效等价类:<0 或 >100,如-1,101等

弱一般等价类:0~100中任意一个数为测试数据,只设计1个用例即可
强一般等价类:分为0、 1~99、 100三个等价类,需要设计3个用例
弱健壮等价类:考虑到60分在实际情况中为特殊数字,划分0、 1~99(除60外)、 100、 60四个等价类
强健壮等价类:考虑各种非法输入,如负数、其他字符等等

4.2按照数值划分

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

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

有效等价类:本科、硕士和博士其中一种

无效等价类:除要求的2种外其他字符,如小学、专科等

4.3按照数值集合划分

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

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

有效等价类:密码是数字和字母的组合(还可以细分)

无效等价类:密码包括中文、密码包括其他符号等

4.4按限制条件或规则划分

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

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

有效等价类:9+外线号码

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

4.5细分等价类

在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类,并建立等价类表。

例子:确定了等价类后,再列表形式列出所有划分出的等价类表

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

按照[输入条件][有效等价类][无效等价类] 建立等价类表,列出所有划分出的等价类
为每一个等价类规定一个唯一的编号。
设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。
设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。

6、等价类划分法的实例分析

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

分析题目中给出和隐含的对输入条件的要求:

(1)整数 (2)三个数 (3)非零数 (4)正数
(5)两边之和大于第三边 (6)等腰 (7)等边
如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。
4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。

请各位列出等价类表并编号

覆盖有效等价类的测试用例:

a b c 覆盖等价类号码

3 4 5 (1)–(7)

4 4 5 (1)–(7),(8)

4 5 5 (1)–(7),(9)

5 4 5 (1)–(7),(10)

4 4 4 (1)–(7),(11)

覆盖无效等价类的测试用例:

等价类划分法的步骤和示例相关推荐

  1. 关于等价类划分法的简介及示例

    2.1等价类划分法 将一个程序的输入输出按照一定的需求进行分类,这些分类的子集就是等价类,在每个等价类中选择具有代表性的数据进行测试. 2.1.1等价类划分法 划分等价类 有效等价类:符合程序要求.合 ...

  2. 软件测试 通用技术03 测试用例 黑盒测试用例设计方法 等价类划分法 边界值分析法 判定表法 场景法 功能图法 其他用例设计方法 用例设计方法综合选择

    文章目录 1 测试用例 1.1 测试用例的定义 1.2 测试用例模板 1.3 测试用例模板的内容 测试用例编号 测试项 依赖用例 测试步骤 测试数据 预期结果 测试结果 测试人 备注 2 测试用例编写 ...

  3. 测试用例的定义、内容以及设计方法——等价类划分法、边界值分析法等

    文章目录 1.什么是测试用例? 2.测试用例模板和包含的内容 3.设计测试用例的作用 4.测试用例编写注意事项 5.黑盒测试用例设计方法 5. 1 等价类划分法 5.2 边界值分析法 5.3 因果图法 ...

  4. 黑盒测试方法(等价类划分法、边界值法、决策表、判定表、正交表、场景法、错误推断法)

    1.黑盒测试方法 1.1.等价类划分法: 根据软件测试原则可以知道,要做到穷举是不可能的,事实上也是不必要的.为了减少工作量,需要对测试用例进行适当选取.等价类划分法便提供了一种选取测试用例的方法. ...

  5. 黑盒测试等价类划分法、边界值分析法

    一.实验目的 能够掌握黑盒测试的等价类划分法.边界值分析法原理 能够运用等价类划分法.边界值分析法写测试用例 二.实验任务 根据商城注册模块的要求用等价类划分法和边界值法写测试用例 根据注册程序的要求 ...

  6. 黑盒测试方法之等价类划分法

    等价类划分法 概念 需求示例 测试用例分析设计 总结 概念 等价类是指某个输入域的子集,在该子集中每个输入数据的作用是等效的,也就是该子集中每个输入数据的揭错概率是一样的.等价类分为有效等价类和无效等 ...

  7. 黑盒测试法——等价类划分法(修改版)

     黑盒测试法--等价类划分法   实验目的:1.掌握等价类划分的方法 掌握按等价类方法设计测试用例 实验内容: 1.请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序 ...

  8. 【软件测试】黑盒测试の等价类划分法

    等价类划分法 等价类划分法是一种重要的.常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性. 等价类划分法是把所有可能的输入数据,即程序的输入域划分成 ...

  9. 黑盒测试 ------ 等价类划分法

    文章目录 等价类划分法 等价类划分概念: 等价类的分类 等价类思考步骤 例子 等价类划分的总结 等价类划分法 计算器:到底输入几组数据才算测试完毕? 答案:一个一个测试效率低下,所以一定要分类测试. ...

最新文章

  1. 多线程threading
  2. 锐捷2126G部分基础配置(升级系统固件、telnet、vlan)
  3. udacity 项目3人脸检测
  4. 基于ESP32模块利用检测线圈检测车模停止时间,室内视觉AI裁判系统
  5. AI:2020年6月21日北京智源大会演讲分享之15:15-15:40黄萱菁教授《自然语言处理中的表示学习》
  6. Zabbix linux agent 安装
  7. Girl Love Value
  8. linux识别UDF文件系统吗,Linux Kernel UDF文件系统本地缓冲区溢出漏洞
  9. mysql ( )=,(mysql)
  10. 小贾漫谈——Java反射
  11. LINUX开源监控平台Nagios(服务监控配置)
  12. 数据损坏了,怎么找回来?用超融合备份一体机啊
  13. Flink Forward Asia 2020 -- Keynote 总结
  14. 赵立新主持机器人_赵立新配音为何这么牛 看看他的人生经历你就知道了
  15. 程序员,小红书王牌生活记录家。这是一篇记录程序员生涯的笔记。
  16. Sobel边缘检测算子数学原理再学习
  17. unity中Input.Touch详解
  18. 大白话 同步阻塞、同步非阻塞、异步非阻塞
  19. 数仓建设保姆级教程,离线和实时理论+实战)
  20. android 类对象的存储,android - 以共享首选项存储和检索类对象

热门文章

  1. JavaScript undefined
  2. 关于目标:骑行里程破万的感想
  3. 2012考研英语二真题下载 2012考研英语二解析下载
  4. nginx安装与调优部署文档(Linux)
  5. 利用Pajek软件批量处理excel数据,批量生成网络关系图
  6. RSA与大数运算(转载)
  7. Redis学习_2_数据类型_2_hash
  8. 群主发普通红包.007
  9. CST2020如何将参数扫描后复杂的1D数据转换为单一频点的0D数据
  10. rust的矿坑_转: Rust中的Pin详解 【Rust语言中文社区】