实例介绍等价类划分法

实例介绍等价类划分法

在软件测试的活动中,穷尽法无疑是最安全最保险的一种方法,但也是成本代价高到不可能实现的一种方法,或许一个软件的所有输入和操作还没有穷尽完,这个软件都没有存在的必要了,甚至测试人员都要老死了。所以,前辈们为我们准备了等价类划分法,该方法是指将输入划分为若干集合,每个集合表示效果相同的一类,在测试时只需从每个集合中抽取一个即可测试出被测软件对于该集合所有输入的表现,以便于我们能够以最小的代价完成最有效的测试。 何谓等价类?某些数据的集合,该集合内的每个数据都是等效的,那么可以将该集合视为等价的一类。何谓等效?对于计算机软件而言,即对于数据的处理过程以及处理结果都完全一致。处理结果完全一致很容易理解,处理过程还要完全一致吗?我们举个例子来说吧,比如判断某年是否是闰年,闰年的计算方法是公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。那么虽然1900和1991年都是平年,但却不能将其简单视为等价类,因为1991不可被4整除、不可被100整除、不可被400整除,而1900,可被4整除、可被100整除、不可被400整除,无论程序如何编写,他们都会经过不同的判断逻辑,只测其中一个时,就无法覆盖到其他的判断语句,所以,划分等价类时,应掌握必须使同类数据的处理过程及处理结果完全一致的大原则。

等价类分为有效等价类和无效等价类,有效等价类就是由那些对程序的规格说明有意义的、合理的输入数据所构成的集合;无效等价类就是那些对程序的规格说明不合理的或无意义的输入数据所构成的集合。划分等价类时,除了应掌握必须使同类数据的处理过程及处理结果完全一致的大原则外,针对于以下场景相应的划分原则可供参考:

1、 当输入条件规定了取值范围时,则可以确立取值范围内为有效等价类,范围外为无效等价类。(如成年人每分钟心跳60-100之间为正常) 2、 当输入条件规定了个数(或次数)范围时,则可以确立取值范围内为有效等价类,范围外为无效等价类。(如一个用户登录时连续输入错误密码次数达到3次)

3、 当输入条件是一个布尔量且限制是以单选方式输入时,可确定两个有效等价类。(如性别以单选按钮选择或下拉框选择)

4、 当输入条件是一组数据(假设是N个)且限制是以单选方式输入时,若数据选项是手工设定的,则可确定N个有效等价类,即每个选项为一个单独的等价类(如注册用户的学历选择);若数据选项是动态获取的,则可确定1个有效等价类,即任意一个选择(如新增员工的所属部门)。 5、 当输入条件是一组数据(假设是N个)且是以多选方式输入时,若数据选项是手工设定的,则除了将每个选项作为一个单独的等价类外,还

应补充以下等价类:不选时、全选时、选任意两个;若数据选项是动态获取的,则除了将任意一个作为1个有效等价类外,还应补充以下等价类:不选时、全选时、选任意两个。

6、 在输入条件规定了输入数据必须遵守的规则时,则可划分为符合规定条件的有效等价类与不符合规定条件的无效等价类,这时应充分考虑规定是否可以拆分为具有单一意义的子规定了,然后制定从不同角度违反规则的无效等价类,比如规定必须输入非0的正整数,则可拆分为非0、数字、正数、整数起码这4个子规定,至少每个规定对应一个无效等价类,即0、字符串、负数、小数,甚至还可以挖掘出输入为空这样的隐含等价类,这是在工作学习中应当注意的。

下面以一个实例来结束等价类划分法的介绍。需求是:对用户输入的分数进行评级,其中90到100为A,80-89为B,70-79为C,60-69为D,60以下为E。输入分数要求必须是正整数或0。根据分析得出以下等价类划分列。

实例介绍等价类划分法

在软件测试的活动中,穷尽法无疑是最安全最保险的一种方法,但也是成本代价高到不可能实现的一种方法,或许一个软件的所有输入和操作还没有穷尽完,这个软件都没有存在的必要了,甚至测试人员都要老死了。所以,前辈们为我们准备了等价类划分法,该方法是指将输入划分为若干集合,每个集合表示效果相同的一类,在测试时只需从每个集合中抽取一个即可测试出被测软件对于该集合所有输入的表现,以便于我们能够以最小的代价完成最有效的测试。 何谓等价类?某些数据的集合,该集合内的每个数据都是等效的,那么可以将该集合视为等价的一类。何谓等效?对于计算机软件而言,即对于数据的处理过程以及处理结果都完全一致。处理结果完全一致很容易理解,处理过程还要完全一致吗?我们举个例子来说吧,比如判断某年是否是闰年,闰年的计算方法是公元纪年的年数可以被四整除,即为闰年;被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。那么虽然1900和1991年都是平年,但却不能将其简单视为等价类,因为1991不可被4整除、不可被100整除、不可被400整除,而1900,可被4整除、可被100整除、不可被400整除,无论程序如何编写,他们都会经过不同的判断逻辑,只测其中一个时,就无法覆盖到其他的判断语句,所以,划分等价类时,应掌握必须使同类数据的处理过程及处理结果完全一致的大原则。

等价类分为有效等价类和无效等价类,有效等价类就是由那些对程序的规格说明有意义的、合理的输入数据所构成的集合;无效等价类就是那些对程序的规格说明不合理的或无意义的输入数据所构成的集合。划分等价类时,除了应掌握必须使同类数据的处理过程及处理结果完全一致的大原则外,针对于以下场景相应的划分原则可供参考:

1、 当输入条件规定了取值范围时,则可以确立取值范围内为有效等价类,范围外为无效等价类。(如成年人每分钟心跳60-100之间为正常) 2、 当输入条件规定了个数(或次数)范围时,则可以确立取值范围内为有效等价类,范围外为无效等价类。(如一个用户登录时连续输入错误密码次数达到3次)

3、 当输入条件是一个布尔量且限制是以单选方式输入时,可确定两个有效等价类。(如性别以单选按钮选择或下拉框选择)

4、 当输入条件是一组数据(假设是N个)且限制是以单选方式输入时,若数据选项是手工设定的,则可确定N个有效等价类,即每个选项为一个单独的等价类(如注册用户的学历选择);若数据选项是动态获取的,则可确定1个有效等价类,即任意一个选择(如新增员工的所属部门)。 5、 当输入条件是一组数据(假设是N个)且是以多选方式输入时,若数据选项是手工设定的,则除了将每个选项作为一个单独的等价类外,还

应补充以下等价类:不选时、全选时、选任意两个;若数据选项是动态获取的,则除了将任意一个作为1个有效等价类外,还应补充以下等价类:不选时、全选时、选任意两个。

6、 在输入条件规定了输入数据必须遵守的规则时,则可划分为符合规定条件的有效等价类与不符合规定条件的无效等价类,这时应充分考虑规定是否可以拆分为具有单一意义的子规定了,然后制定从不同角度违反规则的无效等价类,比如规定必须输入非0的正整数,则可拆分为非0、数字、正数、整数起码这4个子规定,至少每个规定对应一个无效等价类,即0、字符串、负数、小数,甚至还可以挖掘出输入为空这样的隐含等价类,这是在工作学习中应当注意的。

下面以一个实例来结束等价类划分法的介绍。需求是:对用户输入的分数进行评级,其中90到100为A,80-89为B,70-79为C,60-69为D,60以下为E。输入分数要求必须是正整数或0。根据分析得出以下等价类划分列。


相关文章

  • 常见用例设计方法介绍
  • 常见用例设计方法介绍 一. 等价类划分法 等价类划分法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用例.每一类的代表性数据在测试中的作用等价于这一类中的其他值. 等价类划分可有两种不同的情况:有效等价类 ...查看


  • 几种多元统计分析方法及其在生活中的应用[1]
  • 第2章聚类分析及其应用实例 2. 1聚类分析简介 聚类分析是根据"物以类聚"的道理,对样品或指标进行分类的一种多元统 计分析方法,它们讨论的对象是大量的样品,要求能合理地按各自的特性來进行 合理的分类,没有任何模式可供参 ...查看


  • 信息系统的粗糙集方法及应用实例
  • ════════════════════════════════════════════════════════════════,JOURNAL OF DALIAN NATIONALITIES UNIVERSITY January 2006 ...查看


  • 黑盒测试和白盒测试部分阶段性测试题
  • 1.如图显示某程序的逻辑结构.试为它设计足够的测试用例,分别实现对程序的判定覆盖.条件覆盖和条件组合覆盖.(参阅课件"第三章白盒测试及其实例设计(第二节路经分析测试).ppt") 答案: 2.有二元函数f(x,y),其中 ...查看


  • 软件工程整理版
  • 软件工程基本概念 (1)软件:是计算机系统中与硬件相互依存的另一部分,它是包括程序.数据及其相关文档的完整集合. (2)软件工程:开发.运行.维护和修复软件的系统方法. (3)软件工程方法学:通常把在软件生命周期全过程中使用的一整套技术的集 ...查看


  • 单元测试用例设计指南
  • 软件测试系列 密 级:普通 文件编号:NO.2 文件类别:测试管理体系文件 发 放 号:1002 应用软件 测试用例设计指南 北京梅梅出品有限公司 版本说明 日期 版本号 发布说明 作者 批准人 签字 岗位 目录 1.引言......... ...查看


  • 软件测试毕业论文 1
  • 现在学生学籍的管理趋向于复杂化和多元化,随着计算机的广泛应用,越来越多的高校均采用了计算机化的管理模式,本文介绍了学生学籍管理系统的整个测试过程,阐述了对本系统院系管理,学生管理 ,课程管理,成绩管理,系统管理等模块的功能进行测试. 据分析 ...查看


  • 基于SFTA和等价类的软件测试用例设计方法研究与应用
  • 摘 要: 为了解决软件测试时高可靠性安全性要求,测试用例设计的充分性和有效性不足的问题,软件故障树分析结合等价类原则解决了测试用例设计的充分性和有效性问题.通过对软件的故障模式进行分析,在建立软件故障树的基础上获得了软件故障树的最小割集.以 ...查看


  • 软件测试总结
  • 黑盒测试 一.概念 黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用. 在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正 ...查看


热门内容