一个程序可以有多个输入,等价类划分就是将这些输入数据按照输入需求进行分类,将它们划分为若干个子集,这些子集即为等价类,在每个等价类中选择有代表性的数据设计测试用例

如果没有输入域,是否就不需要等价类方法??

一个软件要能接收正常的输入,也要能处理无效的输入,给出提示等。

划分等价类

(1)如果程序要求输入值是一个有限区间的值,则可以将输入数据划分为1个有效等价类和2个无效等价类,有效等价类为指定的取值区间,两个无效等价类分别为有限区间两边的值。例如,某程序要求输入值x的范围为[1,100],则有效等价类为1≤x≤100,无效等价类为x<1和x>100。

(2)如果程序要求输入的值是一个“必须成立”的情况,则可以将输入数据划分为1个有效等价类和1个无效等价类。例如,某程序要求密码正确,则正确的密码为有效等价类,错误的密码为无效等价类。

(3)如果程序要求输入数据是一组可能的值,或者要求输入值必须符合某个条件,则可以将输入数据划分为1个有效等价类和1个无效等价类。例如,某程序要求输入数据必须是以数字开头的字符串,则以数字开头的字符串是有效等价类,不是以数字开头的字符串是无效等价类。

(4)如果输入条件规定了取值的个数(例如,“汽车可登记一至六名车主”),那么就应确定出一个有效等价类和两个无效等价类(没有车主,或车主多于六个)

(5)如果在某一个等价类中,每个输入数据在程序中的处理方式都不相同,则应将该等价类划分成更小的等价类,并建立等价表。

设计步骤

(1)确定输入,划分有效等价类和无效等价类。

选取每一个输入条件(通常是规格说明中的一个句子或短语)并将其划分为两个或更多的组。可以使用图表格来进行划分。注意,我们确定了两类等价类:有效等价类代表对程序的有效输入,而无效等价类代表的则是其他任何可能的输入条件(即不正确的输入值)。

(2)建立等价类表,给等价类编号。

(3)设计数据覆盖有效等价类。尽可能多地覆盖尚未被覆盖的有效等价类,直到测试用例覆盖了所有的有效等价类。

(4)设计数据覆盖无效等价类,每个测试用例只覆盖一个无效值

实例 三角形问题的等价类划分

注意:等价类方法中的输入,不仅是数据的输入,有可能是选择条件的不同。

余额宝的提现功能分为快速到账与普通到账2种情况,对余额宝的提现功能进行测试,首先对余额宝提现进行等价类划分。如果选择快速到账,则可将提现功能划分为1个有效等价类与2个无效等价类,具体如下。(1)有效等价类:0<提现金额≤10 000元。(2)无效等价类:提现金额≤0。(3)无效等价类:提现金额>10 000元。

举例

等价类及测试数据:

参考书籍《软件测试》黑马程序员编著来源微信读书

【7】测试用例设计-等价类分析法相关推荐

  1. 测试用例设计——场景分析法

    测试用例设计----场景分析法 定义 分析软件应用的场景,从用户的角度出发,从场景的角度来设计测试用例,是一种面向用户的测试用例设计方法. 优点:实用性强,有效,设计出来的用例有价值 缺点:可能使用的 ...

  2. 测试用例设计——边界值分析法

    我们在进行软件测试之前,为了能够逻辑清晰的.更好的没有重复的去执行测试,所以会编写测试用例.在测试用例编写好之后,可以直接按照测试用例来进行测试.那我们用来设计测试用例的方法有很多种,边界值分析法就是 ...

  3. 测试用例设计—场景分析法

    1. 测试用例的概念和作用 1.1. 引言 对一个测试工程师来说,测试用例的设计编写是一项必须掌握的能力,但有效的设计和熟练的编写测试用例却是一个十分复杂的技术,测试用例编写者不仅要掌握软件测试技术和 ...

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

    by 青竹居士 等价列划分设计方法是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少量具有代表性的数据作为测试用例.等价类是指某个输入域的子集合.在该子集合中,各个 ...

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

    一 定义 等价类划分:指的是一种典型的.重要的黑盒测试方法.是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.测试某等价类的代表值就等价于对这一类其他值的测试. 二 分 ...

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

    目录 说明 使用步骤 等价类划分原理: 确定等价类的原则: 使用示例 说明 在所有测试数据中,具有某种共同特征的数据集合进行划分. 分类: 有效等价类:满足需求的数据集合 无效等价类:不满足需求的数据 ...

  7. 黑盒测试用例设计 - 边界值分析法

    目录 边界值的选择原则 使用示例 边界值的选择原则 如果输入条件规定了值的范围,则应取刚达到这个范围边界的值,以刚刚超越这个范围边界的值作为测试输入数据 如果输入条件规定了值的个数,则用最大个数.最小 ...

  8. [原创]测试用例设计之场景法法

    [原创]测试用例设计之"场景法"法  场景法设计测试用例,主要用在于事件触发流程中,当某个事件触发然后就形成相应的场景流程,不同的事件触发,不同顺序和不同的处理结果,就形成一系列的 ...

  9. 关于软件测试设计测试用例方法(等价类划分法)的学习

    等价类划分法 一. 分类 1.有效等价类:有效数据. 2.无效等价类:无效数据.         二.适用场景 等价类一般用于有经典输入框的场景 三.设计测试用例步骤 1.需求分析 2.划分等价类,例 ...

最新文章

  1. 机器学习(4)特征预处理
  2. 前后端分离后的前端时代
  3. visual studio的试用版评估期已结束 解决办法
  4. Python--day64--内容回顾
  5. python【Matlibplot绘图库】多图合并显示(真の能看懂~!)
  6. phpstudy免费安全检测服务_Phpstudy联合各大安全厂商为用户提供免费安全检测服务...
  7. 引用dll动态库,动态库中弹出对话框输入,将输入参数,作为变量继续调用。...
  8. 数字图像处理(一):灰度变换和直方图处理
  9. java实现ldap服务器_Java到LDAP教程(包括如何安装LDAP服务器/客户端)
  10. hadoop学习笔记-目录
  11. Linux的分区类型
  12. java读取request中的xml
  13. Windows系统端口占用,使用命令行查找并杀进程
  14. unity, trail renderer gone black on iOS
  15. 190606每日一句
  16. 共轭梯度法(CG)详解
  17. datagrid commandname
  18. 学生管理系统需求分析
  19. 《信号与系统》解读 第3章 强大的傅里叶时域频域分析工具-1:深入理解信号的时域与频域,需要从熟悉的声音信号入手
  20. (Struts)ActionForm类及表单数据验证

热门文章

  1. 在ISA2006以SSL-TO-HTTP方式发布内部的WEB服务器(一)
  2. python全局代理_玩Python之HTTP代理
  3. 【论文写作】毕业论文怎么写?写作步骤是什么?
  4. dirent.h简介
  5. 机器视觉:HDR技术
  6. axis1.4 java.sql_web Service问题。。。用axis1.4求帮助
  7. return、reutrn false、e.preventDefault、e.stopPropagation、e.stopImmediatePropagation的区别
  8. 分享 | 滴滴分布式NoSQL数据库Fusion的演进之路
  9. redis五种数据类型的使用场景
  10. 关于Chrome Devtools你可能有所不知的几个技巧