-
软件测试 6(等价类) --等价类测试
2020-05-03 17:29:24软件测试专栏 上一篇 主目录 下一篇 目录1 简介2 等价类测试分类 【前言】 弱一般等价类测试是基于单缺陷假设,强一般等价类测试是基于多缺陷假设;说等价类健壮是因为考虑无效值(一般==不考虑无效...软件测试专栏 上一篇 主目录 下一篇
【前言】
弱
一般等价类测试是基于单缺陷
假设,强
一般等价类测试是基于多缺陷
假设;说等价类健壮是因为考虑无效值(一般==不考虑无效值,健壮==考虑无效值
)。弱是取MAX,强是笛卡尔乘积
边界值测试和等价类测试都是黑盒测试
1 简介
什么是等价类测试?
等价类是指某个输入域的子集合中各个数据对于揭露程序的错误都是等效的,或者进行相同的处理。测试某等价类的一组数据就等价于对这一类其他值得测试,因此在等价类中只需要取一组测试用例即可。等价类集合的划分,提供完备性、保证无冗余性。确定等价类的原则
1)输入条件规定
取值范围
,则卡定义一个有效等价类和两个无效等价类。例如学生成绩范围是0~100,则一个有效类:0<=成绩<=100,两个无效类:成绩<0,成绩>100
2)如果规定了输入数据的个数
,则可类似的划分出一个等价类和两个无效等价类。例如一个学生一个学期选修1~3门,则一个有效等价类:1 ~ 3门,两个无效等价类:不选,选修 超过3门
3)如果规定数据的一组值
,且程序对不同的输入做不同的处理,则每个允许的输入值是一个有效等价类,所有不允许的输入值的集合是一个无效等价类。例如输入条件说明学历可为:专科、本科、硕士、博士4种,则一个有效等价类:专科/本科/硕士/博士,一个无效等价类:其他任何学历
4)如果规定了输入数据必须遵循的规则
,可以确定一个有效类和若干个无效等价类。例如校内电话拨号为 9开头,则一个有效等价类:9+外线号码,若干个无效等价类:非9开头+外线号码,9+非外线号码,…
5)如果确知已划分的等价类中个元素在程序中的处理方式不同,则应将此等价类进一步划分
成更小的等价类2 等价类测试分类
分类(两大类,根据规格说明书的功能)
- 有效等价类
- 无效等价类
分类比较
类别 单/多缺陷 考虑无效值 测试用例 弱一般等价类测试 单缺陷 不考虑 通过变量的每个等价类中选择一个值 强一般等价类测试 多缺陷 不考虑 笛卡尔积每个元素都选择一个值 弱健壮等价类测试 单缺陷 考虑 对于有效输入,使用每个有效类的一个值;对于无效输入,测试用例取一个无效值,其余的值都是有效的。 强健壮等价类测试 多缺陷 考虑 有效类+无效类的笛卡尔乘积,从每个元素中获得测试用例 -【注】
说等价类弱是因为是单缺陷(弱==单缺陷,强==多缺陷
)
说等价类健壮是因为考虑无效值(一般==不考虑无效值,健壮==考虑无效值
)3 测试实例
1 两变量函数
X1有三个等价类[a,b]、(b,c]、(c,d],X2有两个等价类[e,f)、[f,g]1) 弱一般等价类测试:从变量的每个等价类中选择一个值即可,3个。(选择不唯一,下同)
2)强一般等价类测试:从笛卡尔积结果中每个元素取一个值,6个
3)弱健壮等价类测试:对于有效输入,使用每个有效类的一个值(同 弱一般等价类测试);对于无效输入,测试用例取一个无效值,其余的值都是有效的。x1<a,x1>d,x2<e,x2>g四个无效情况,无效输入的取值有四个,并保持其余有效。7个。
4)强健壮等价类测试:有效类+无效类的笛卡尔乘积,从每个元素中获得测试用例
2.1 三角形问题(输入域)
划分等价类:
1)弱一般等价类测试&强一般等价类测试:
2)弱健壮等价类测试
3)强健壮等价类测试
3X3X3=27个2.2 三角形问题(输出域)
划分等价类:
2.3 三角形问题(细致划分)
划分有效等价类:
无效等价类:
输入个数不对,输入类型不对,不在有效范围3.1 NextDate
弱健壮:
强健壮:3X3X3=273.2 NextDate
另一种划分(无效等价类仍是3.1中的)
弱一般等价类测试
4 佣金问题(输入域)
等价类划分
部分强健壮等价类测试用例
4 佣金问题(输出域)
等价类划分
测试用例
-
软件测试-3期(KC011) 任务实施 等价类设计测试用例案例.pptx
2020-08-25 09:10:45黑盒测试等价类设计测试用例案例主 讲刘芳芳 等价类设计测试用例等价类设计测试用例的步骤保费计算问题的等价类测试三角形问题的等价类测试等价类设计测试用例的步骤1划分等价类形成等价类表为每一个等价类规定一个... -
软件测试——单元测试——等价类测试
2020-05-26 15:45:32传统的等价类测试 弱一般等价类测试 强一般等价类测试 弱健壮等价类测试 强健壮等价类测试 ...动机
- 期望进行某种意义上完备的测试
- 期望尽可能避免冗余测试
健壮等价类问题:
- 规格说明通常没有定义无效输入所对应的期望输出
- 强类型程序设计语言已经放宽了对无效输入的检验
传统的等价类测试
弱一般等价类测试
强一般等价类测试
弱健壮等价类测试
强健壮等价类测试
主要致力于寻找由于无效数据出现的故障
每个测试用例只使用一个等价类(区间)中的一个测试用例
基于多故障假设
完备性:
- 覆盖了所有的等价类
- 覆盖了所有可能的输入组合
弱:基于单故障假设
健壮:考虑了无效值
原则与注意事项
- 强类型程序设计语言不需要健壮测试
- 错误条件特别重要,采用健壮测试
- 对输入数据的取值可以用区间和离散值集合定义,适合采用等价类测试,也同样适用于在变量取值越界时会出现功能异常的系统
- 等价类测试与边界类测试结合,会增强测试能力
- 程序函数很复杂,可以使用等价类测试。
- 强等价类测试假设各个输入变量之间是独立的,并且相应的乘法操作会引发冗余问题。
-
软件测试 6第六章等价类测试.ppt
2020-07-30 07:52:32Software Testing 第六章 等价类测试 学习目标 ? 等价类概念等价类划分方法掌握 ? 弱等价类测试与强等价类测试掌握 ? 划分等价类的规则掌握 ? 用等价类划分法设计测试用例步骤了解 ? 等价类法举例了解 6.1 等价类... -
软件测试——构造等价类测试用例
2019-06-02 13:39:35软件测试——构造等价类测试用例 16340132 梁颖霖 软件工程(计算机应用方向) 问题 构造下述三角形问题的弱健壮的等价类测试用例。 三角形问题:输入三个不超过100的正整数作为三角形的三条边,判断三角形是等边...软件测试——构造等价类测试用例
16340132 梁颖霖 软件工程(计算机应用方向)
问题
构造下述三角形问题的弱健壮的等价类测试用例。
三角形问题:输入三个不超过100的正整数作为三角形的三条边,判断三角形是等边三角形、等腰不等边三角形、完全不等边三角形还是不能构成三角形。解答
弱健壮等价类测试用例覆盖——针对单缺陷,覆盖有效等价类和无效等价类
根据题目意思,我们可以划分成以下四个等价类表示
- R1 = {<a, b, c> : 三角形三边a, b, c 都相等}
- R2 = {<a, b, c>:三角形三边a, b, c有两边相等}
- R3 = {<a, b, c>:三角形三边a, b, c都不相等}
- R4 = {<a, b, c>:三边a, b, c不能组成一个三角形}
弱一般等价测试用例
测试用例 a b c 期待输出 WN1 7 7 7 等边三角形 WN2 7 7 10 等腰不等边三角形 WN3 7 8 9 完全不等边三角形 WN4 1 1 7 不能构成三角形 软健壮性等价测试用例
考虑a, b, c的非法值输入,要增加额外的软健壮性等价测试用例
测试用例 a b c 期待输出 WR1 -7 7 7 a 取值不在所允许的取值范围内 WR2 7 -7 7 b 取值不在所允许的取值范围内 WR3 7 7 -7 c 取值不在所允许的取值范围内 WR4 101 7 7 a 取值不在所允许的取值范围内 WR5 7 101 7 b 取值不在所允许的取值范围内 WR6 7 7 101 c 取值不在所允许的取值范围内 -
软件质量保证与测试实验(实验一.等价类划分测试方法)
2020-03-30 13:49:52等价类划分测试方法0 目录1 等价类划分测试方法1.1 等价类划分测试方法1.1.1 实验目的1.1.2 实验预习1.1.3 实验内容及要求1.1.4 实验总结2 实验二 0 目录 1 等价类划分测试方法 1.1 等价类划分测试方法 1.1.1 实验...软件质量保证与测试.实验一.等价类划分测试方法
0 目录
1 等价类划分测试方法
1.1 等价类划分测试方法
1.1.1 实验目的
(1) 理解等价类划分方法的内涵;
(2) 掌握等价类测试健壮性概念;
(3) 能够使用等价类划分法设计测试用例。1.1.2 实验预习
等价类划分测试方法的主要目的是能够对软件进行完备的测试,同时避免冗余测试用例的存在。等价类的划分关键是确定类的等价关系,根据单/多缺陷假设和健壮性,等价类划分测试方法可以分为弱一般等价类测试、强一般等价类测试、弱健壮等价类测试和强健壮等价类测试四类方法。
1.1.3 实验内容及要求
现在有一个应用于旅馆住宿管理系统的程序,其包含了用户登录、用户注册和用户结算等功能,需要对该程序进行测试,具体测试任务主要有:
(1) 旅馆住宿系统用户名字段测试用例设计;(必做)
(2) 旅馆住宿系统用户注册测试用例设计;(必做)
(3) 旅馆住宿系统结算功能测试用例设计。(选做)
在任务1中,用户名限制为6~10位自然数,要求使用等价类划分方法设计测试用例。
在任务2中,用户信息主要有登录帐号(6~10位自然数)、真实姓名(大小写的英文字符)、登录密码和确认密码、出生日期(其中有效年份1900~2010)。
在任务3中,旅馆房费结算有一定的规则,当游客入住后可根据房间价格、入住天数、入住人是否有会员卡等情况给予折扣结算,房费计算公式为,房费=房间单价×折扣率×入住天数。折扣率根据住宿人住宿天数(最多30天)、是否有会员卡、入住次数(3次及以下、3次以上)和物品寄存个数的不同有所不同,体现在不同条件下对应的积分不同,10分及10分以上折扣率为7折,10分以下折扣率为9折,具体规则:
要求给出所有这些任务的实验步骤以及强健壮等价类测试用例,并给出实际测试结果。1.1.4 实验总结
(1) 请确定任务1和任务2的输入和输出变量。
(2) 对于任务1和任务2,在做健壮性测试用例时,给出输入变量的无效区间。
(3) 请结合实验谈一下等价类划分测试方法的优劣。一.任务1:
用户名限制为6~10位自然数,要求使用等价类划分方法设计测试用例。
1用例设计:
2源码展示:
3输出结果
任务2:
用户信息主要有登录帐号(6~10位自然数)、真实姓名(大小写的英文字符)、登录密码和确认密码、出生日期(其中有效年份1900~2010)。
1用例设计:
2源码展示:
3输出结果
(3)请结合实验谈一下等价类划分测试方法的优劣。
1优点是用相对少的测试用例就能够进行比较完整的输入数据覆盖,解决了不能穷举测试的问题。 2缺点是需要花费很多时间去定义规格说明中一般不会给出的无效测试用例预期输出。另外,等价类划分方法缺乏对特殊测试用例的考虑,并且经常需要深入的系统知识才能划分合适的等价类。
2 实验二
-
软件测试技术第4章黑盒测试第2节等价类测试.ppt
2019-12-27 01:14:193. 弱健壮等价类测试 弱基于单缺陷假设 健壮考虑无效值 测试用例设计 对有效输入使用每个有效等价类的一个值 对无效输入测试用例将拥有一个无效值并保持其余的值都是有效的 弱健壮等价类测试用例 4. 强健壮等价类... -
慕课软件质量保证与测试(第三章.等价类划分测试)
2020-03-02 10:49:48等价类划分测试0 目录3 黑盒测试3.2 等价类划分测试3.2.1课堂重点3.2.2测试与作业4 下一章 0 目录 3 黑盒测试 3.2 等价类划分测试 3.2.1课堂重点 3.2.2测试与作业 ... -
软件测试——等价类划分
2020-09-09 17:38:091)有效等价类 是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。 2)无效等价类 与有效等价类的定义恰巧相反。无效等价类指对... -
软件测试技术4_2等价类.ppt
2020-08-19 15:32:281. 弱一般等价类测试 弱一般等价类测试的假设单缺陷假设 失效极少是由两个或多个缺陷的同时发生引起的 测试用例设计 选取的测试用例覆盖所有的有效等价类 弱一般等价类测试用例 2. 强一般等价类测试 基于多缺陷假设 ... -
软件测试基础等价类划分决策表.pptx
2020-08-25 00:07:49第一章 软件测试基础知识;测试概述内容回归;测试概述内容回归;测试概述内容回归;第一章 软件测试基础知识;第一章 软件测试基础知识;黑盒测试技术介绍;黑盒测试技术介绍;黑盒测试技术介绍;黑盒测试技术介绍;第一章 ... -
软件测试技术之传统等价类测试
2017-03-06 16:39:37这篇博文写的很好,刚在课堂上...等价类划分法是把程序的输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据作为测试用 例。每一类的代表性数据在测试中的作用等价于这一类中的其他值。 等价类划 -
软件测试——等价类
2019-09-13 08:56:021.定义 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的...划分等价类: 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都... -
软件测试基本知识等价类划分.pptx
2020-04-24 00:31:13软件测试技术与管理;第一部分 黑盒测试及其用例的设计;黑盒测试用例的基本方法;等价类划分法 ;等价类划分法;划分法;用等价类划分法设计测试用例步骤;这个取费费率如果只考虑人工费和材料费的费率那么人工费的费率... -
软件测试理论测试用例测试之等价类划分
2018-03-03 15:21:00定义 把所有可能输入的数据,即程序的输入域划分策划若干部分(子集),然后从每一个子集中选取... 无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的、不合理的输入数据集合 ... -
软件测试:等价类划分举例
2018-04-24 17:03:45包括有效等价类和无效等价类,建立等价类列表为每个等价类规定一个唯一的编号设计一个测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类被覆盖完为止设计一个测试用例,... -
【软件测试】划分等价类
2019-10-08 18:00:25一、划分等价类的有关概念 1.等价类:所谓等价类是指输入域的...(2)无效等价类:检查软件功能和性能的实现是否有不符合规格说明要求的地方。 二、等价类的划分方法: (1)按区间划分:可以确定一个有效等价类、... -
软件测试白皮书-等价类
2017-12-20 15:14:00现用等价类划分法设计测试用例,来测试程序的"日期检查功能"。 1)划分等价类并编号,下表等价类划分的结果 输入等价类 有效等价类 无效等价类 日期的类型及长度 ①6位... -
黑盒测试的等价类划分法软件测试
2015-03-22 15:35:00在常见的黑盒测试中,有一种叫做等价类划分法。 所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域。目的在于测试用例的无冗余性。分为有效等价类和无效等价类。 有效等价类:检验... -
软件测试之等价类划分
2019-10-07 06:49:10Equivalence Class Partitioning(等价类划分) 作为一个程序猿我们应该知道在软件测试过程中需要使用大量的测试用例,那么如何选择适当的测试用例来代表整个数据集,通过降低测试的数目去实现“合理的”覆盖,... -
软件测试-等价类作业
2020-03-18 14:02:55要求:请采用等价类划分的方法设计测试用例。 提交:提交文件为excel。 输入条件 有效等价类 编号 无效等价类 编号 符号 无符号或+、- 1 长度大于1的字符串或长度为1的非+... -
软件测试-测试用例编写-等价类划分
2019-10-27 15:47:24等价类划分是指分步把海量(无限)的测试用例简化到很小,但过程同样有效,也即是说,选取足够小的测试用例,发现更多的软件缺陷。 类型划分 等价类划分有两种不同情况: 有效等价类与无效等价类。 有效等价类: 指... -
软件测试学习笔记:等价类划分方法
2021-01-07 20:20:07软件测试学习笔记:等价类划分方法有效性划分等价类操作步骤边界值 有效性划分 有效等价类:满足需求 无效等价类:不满足需求 等价类操作步骤 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,... -
软件测试用例设计之等价类划分
2020-12-29 22:38:48一、等价类划分 1)概念 某个输入域的集合,在这个集合中每个输入条件都是等效的,如果其中一个的输入不能导致问题发生,那么集合中其它输入条件进行测试也不太可能发现错误。... 2)等价类法设计测试用例的步骤 -
软件测试方法_等价类划分法
2019-10-06 21:43:07③等价类测试用例的类别 ④等价类划分的原则 ⑤等价类划分法的测试用例应用 ⑥边界值分析法的实例分析 1、等价类划分法的介绍和概念 划分 指互不相交的一组子集,这些子集的并是整个集合。 对测试的意义... -
软件测试 三角形等价类分析
2020-12-14 14:49:021、题目:输入三个数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形是一般三角形、等腰三角形还是等边三角形时。请为该程序设计测试用例。...用等价类划分方法: 分析: ... -
软件测试有效等价类练习题_有效测试
2020-05-15 01:05:52软件测试有效等价类练习题 最近,DHH 发起了有关TDD的激烈辩论,当时他声称TDD已死 。 这场持续不断的辩论成功吸引了包括我们在内的开发人员世界的关注。 在我们的办公室里发生了一些关于进行测试的正确做法的... -
软件测试方法-等价类划分法
2019-10-06 23:18:32等价类划分法是测试工作中频繁使用的方法,每一步的测试工作都与它密切相关,对这个方法的深入理解,以及灵活使用是软件测试工作的基础 等价类划分法是把所有的可能的输入数据,即程序的输入域划分为若干部分(子集...
-
萝丽双路单向电调 - B版固件-增加丢信号保护.rar
-
基于STM32F03ZET6移植RT-Thread
-
C/C++编程全家桶(Daozy极限编程)
-
01 Python编程语言历史及特性.mp4
-
python基础
-
(新)备战2021软考网络工程师分类强化培训套餐
-
国家注册信息安全工程师体系课程(CISP-PTE)
-
数量性状基因定位研究中若干常见问题的分析与解答.pdf
-
2019-2-10
-
前端性能优化
-
WindowsAPI函数查看工具2.0.exe.zip
-
python数据分析基础
-
Binary indexed tree
-
萝丽双路单向电调 - B版源码-增加丢信号保护.rar
-
打印0~999的水仙花数【Java方法练习】
-
(新)备战2021软考网络工程师顺利通关培训套餐
-
php使用Qrcode生成二维码
-
AgileOne1.1正式版
-
2021年T电梯修理考试题及T电梯修理多少钱
-
flink Caused by: java.net.BindException: Could not start rest endpoint on any port in port range 808