等价类划分法_第1页
等价类划分法_第2页
等价类划分法_第3页
等价类划分法_第4页
等价类划分法_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、黑盒测试之黑盒测试之 等价类划分法等价类划分法/边界值分析法边界值分析法 产品部 赵丹丹 黑盒测试是测试人员完全不考虑程序内部的逻辑结 构和内部特性,只依据程序的需求规格说明书,检 查程序的功能是否符合他的功能需求的测试方法。 黑盒测试 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错误错误1:功能不正确或遗漏 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错误错误2:界面错误 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错误错误3:输入和输出错误 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错

2、误错误4:数据库访问错误 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错误错误5:性能错误 注重于测试软件界面和功能需求,主要试图发现下列几类错误 黑盒测试目的 错误错误6:初始化终止错误 黑盒测试方法 边界值分析法 正交试验设计法 因果图法 等价类划分法 错误推测法 功能图法 场景法 判定表组成法 案例: 1+1=2,1+2=3,1+3=4. 2+1=3,2+2=4,2+3=5. 3+1=4,3+2=5,3+3=6. 4+1=4,4+2=6,4+3=7. . 穷举测试? 计算1-100之间的两个自然数的和。 我们要想办法用最少的 测试用例达到测试目标 等价类划分 含

3、义: 将程序中所有可能的输入数据划分成若干个等价类, 然后从每个部分中选取具有代表性的数据当做测试用例进 行合理的分类。 设计测试 用例 穷举 测试 X 合理分类 等价类划分 等价类划分法 等价类划分法是一种典型的、重要的黑盒测试方法。 等价类是输入域的集合,在该集合中每个输入数据的作 用都是等效的。我们合理的假定,测试等价类中的代表 值就等于这一类中的其他值。 测试用例由有效等价类和无效等价类的代表组成,从而 保证测试用例具有完整性和代表性。 有效等有效等 价类价类 无效等无效等 价类价类 等价等价 类类 有效等价类 有效等价类:指对于程序规格说明来说,是合理的、有 意义的输入数据构成的集合

4、。 利用有效等价类可以检验程序是否实现了规格说明预先 规定的功能和性能。 有效等价类可以是一个,也可以是多个。 无效等价类 无效等价类:和有效等价类相反,无效等价类是指对于 软件规格说明而言,没有意义的、不合理的输入数据集 合 利用无效等价类,可以找出程序异常说明情况,检查程 序的功能和性能的实现是否有不符合规格说明要求的地 方 案例: 1+1=2,1+2=3,1+3=4. 2+1=3,2+2=4,2+3=5. 3+1=4,3+2=5,3+3=6. 4+1=4,4+2=6,4+3=7. . 计算1-100之间的两个自然数的和。 1和100之间哪些是有效 的哪些是无效的呢? 1(无效等价(无效等

5、价 类)类)100 等价类划分方法 01 按区间划分 02按数值划分 03按数值集合划分 04按限制条件或规划划分 05按处理方式划分 等价类划 分法原则 举 例 原 则 等价类划分法原则 在输入条件规定了取值范围或值的个数的 情况下,则可以确立一个有效等价类和两 个无效等价类 在规定的考试成绩在0-100之间,有效等 价类是0-100(包括0和100),无效等价 类是小于0,及大于100 等价类划分法原则1 等价类划 分法原则 举 例 原 则 规定输入构成三角形的3条边,则有效等价 类是“输入边数=3”,无效等价类是“输 入边数3” 等价类划分法原则2 在输入条件规定了输入值的集合或者规定

6、了“必须如何”的条件的情况下,可确定 一个有效等价类和两个无效等价类。 等价类划 分法原则 举 例 原 则 在输入条件是一个布尔量的情况下,可 确定一个有效等价类和一个无效等价类 程序输入条件为X=TRUE,有效等价类为 X=TRUE,无效等价类为X=FALSE 等价类划分法原则3 等价类划 分法原则 举 例 原 则 在规定了输入数据的一组值(假定n个),并 且程序要对每一个输入值分别处理的情况下, 可确立n个有效等价类和一个无效等价类 规定输入的考试成绩为A,B,C,D,E则可以确 认有五个有效等价类(成绩=A,成绩=B,成 绩=C,成绩=D,成绩=E)和一个无效等价类 (除这五个值之外的任

7、何一个值) 等价类划分法原则4 等价类划 分法原则 举 例 原 则 在规定了输入数据必须遵守的规则的情况 下,可确立一个有效等价类(符合规则) 和若干个无效等价类(从不同角度违反规 则) 在某语言中对变量标识符规定为“以字母 开头”。那么有效等价类是以“以字母开 头”,而无效等价类有“以数字开头”, “以标点符号开头”,“以空格开头”等 等价类划分法原则5 等价类划 分法原则 举 例 原 则 在确知已划分的等价类中各元素在程序处 理中的方式不同的情况下,则应再将该等 价类进一步的划分为更小的等价类 程序规定对实数做取整操作,取整后如果 能被3整除,则做相应处理。那么对实数这 个等价类就需要再细

8、分为更小的等价类 等价类划分法原则6 建立等价类表 要求输入变量 month和 year 均为整数值,并且满足下 列条件:1month12 1920year2012 参数参数有效等价类有效等价类无效等价类无效等价类 年1920year2012Year2012 月1month12 Month12 测试用例 是为某个特殊目标而编制的一组测试输入、执行条件以及预期结 果,以便测试某个程序路径或核实是否满足某个特定需求。用科学化 的组织归纳,目的是能够将软件测试的行为转化成可管理的模式。 影响软件测试的因素:影响软件测试的因素:(客观 + 主观) 软件本身的复杂程度 人员(包括分析、设计、编程和测试的

9、人员)的素质 测试方法和技术的运用 . 开发队伍是流动的,有经验的走了,新人不断补充进来; 一个人工作也受情绪等影响 . 如何保障软件测试质量的稳定?有了测试用例,无论是谁来测试,参照测 试用例实施,都能保障测试的质量。可以把人为因素的影响减少到最小 设计测试用例步骤 1 为每一个等价类规定一个唯一的编号 2 将程序可能的输入数据分成若干个子集,从每个子集中 选取一个有代表性的数据作为测试用例。 3 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖 地有效等价类,重复这一步,直到所有的有效等价类都被 覆盖为止 4 设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无 效等价类,重复这一步,直到

10、所有的无效等价类都被覆盖 为止。 等价类测试用例分类 注: 弱-有单缺陷假设;一般-不考虑无效值 强-是多缺陷假设;健壮-考虑了无效值 弱一般等价类测试 单缺陷假设,不考虑无效区间 通过使用一个测试用例中的每个等价类区间的一个变量 实现 aX1d,有效区间a,b),b,c),c,d eX2g,有效区间e,f),f,g) 强一般等价类测试 多缺陷假设,不考虑无效区间 aX1d,有效区间a,b),b,c),c,d eX2g,有效区间e,f),f,g) 弱健壮等价类测试 单缺陷假设,要考虑无效区 aX1d,有效区间a,b),b,c),c,d eX2g,有效区间e,f),f,g) 强健壮等价类测试 多

11、缺陷假设,要考虑无效区间;即一个全笛卡尔乘积 aX1d,有效区间a,b),b,c),c,d eX2g,有效区间e,f),f,g) 案例 Date 函数包含三个变量:选取 year 和 month ,要求输 入变量 year 和 month均为整数值,并且满足下列条件: 1920year2012 1month12,列出等价类表 并设计测试用例。 设计测试用例设计测试用例 参数参数有效等价类有效等价类无效等价类无效等价类 年1920year2012Year2012 月1month12 Month12 步骤步骤1:划分:划分等价类并给予唯一的编号等价类并给予唯一的编号 设计测试用例设计测试用例 步骤

12、步骤2:为有效等价类设计为有效等价类设计测试用例测试用例 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有 效等价类,重复这一步,直到所有的有效等价类都被覆盖为止 序号序号设计测试用例设计测试用例覆盖等价类覆盖等价类 11920年1月1920year2012 1month12 2 3 4 5 . 设计测试用例设计测试用例 步骤步骤3:为为无效无效等价类等价类设计设计测试用例测试用例 设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有 效等价类,重复这一步,直到所有的有效等价类都被覆盖为止 序号序号设计测试用例设计测试用例覆盖等价类覆盖等价类 11920年1月1920year2012

13、1month12 21919年1月Year2012 41920年-1月Month12 6 7 . 四类等价类测试用例 (一)弱一般等价类测试用例 月份 年 预期输出 6 1920 1920年6月 (二)强一般等价类测试用例同弱一般等价类测试用例 月份 年 预期输出 6 1920 1920年6月 四类等价类测试用例 (一)弱一般等价类测试用例 月份 年 预期输出 6 1920 1920年6月 (二)强一般等价类测试用例同弱一般等价类测试用例 月份 年 预期输出 6 1920 1920年6月 四类等价类测试用例 (三)弱健壮等价类测试 用例ID 月份 年 预期输出 WR1 6 1920 1920年

14、6月 WR2 -1 1920 无效输入日期(月份不在112中) Month1 WR3 6 1919 无效输入日期(年份不在19202012中)Year12 WR5 6 2013 无效输入日期(年份不在19202012中 Year2012 四类等价类测试用例 (四)强健壮等价类测试 用例ID 月份 年 预期输出 SR1 6 1920 1920年6月 SR2 -1 1920 一个无效(月份不在112中) SR3 13 1920 一个无效(月份不在112中) SR4 6 1919 一个无效(年份不在19202012中) SR5 6 2013 一个无效(年份不在19202012中) SR6 -1 19

15、19 两个无效(年1920,月1) SR7 13 1919 两个无效(年13) SR8 -1 2013 两个无效(年2012,月2012,月13) 参数参数有效等价类有效等价类无效等价类无效等价类 年1920year2012Year2012 月1month12 Month12 边界值分析法 就是对输入或输出的边界 值进行测试的一种黑盒测 试方法。通常边界值分析 法是作为对等价类划分法 的补充,这种情况下,其 测试用例来自等价类的边 界 边界值分析法 通常输入和输出等价类的边界, 就是应着重测试的边界情况。应 当选取正好等于,刚刚大于或刚 刚小于边界的值作为测试数据。 长期的测试工作经验告诉我们

16、, 大量的错误是发生在输入或输出 范围的边界上,而不是发生在输 入输出范围的内部。因此针对各 种边界情况设计测试用例,可以 查出更多的错误。 常见的边界值 边界值 对16-bit的整数而言,32767和-32768是边界 1 屏幕上光标在最左上和最右下的位置2 报表的第一行和最后一行3 数组元素的第一个和最后一个4 循环的第0次,第1次和倒数第二次,最后一次5 边界值划分法原则 1 2 3 4 5 如果输入(输出)条件规定了值的范围,则应该取刚达到这个范 围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据 如果输入(输出)条件规定了值的个数,则用最大个数、最小个 数、比最大个数多1格、比

17、最小个数少1个的数做为测试数据 如果程序的规格说明给出的输入域或输出域是有序集合(如有 序表、顺序文件等),则应选取集合的第一个和最后一个元素 作为测试用例 如果程序用了一个内部结构,应该选取这个内部数据结构的边 界值作为测试用例 分析规格说明,找出其他可能的边界条件 案例 用边界值分析法,假定 X 为整数,10X100,那么 X 在测试中应该取 ()边界值 ? A、X=9,X=10,X=50,X=100 B、X=10,X=11,X=99,X=100 C、X=9,X=10,X=100,X=101 D、X=10,X=100 边界值分析法设计测试用例时,应选取正好等于、刚刚大于、刚刚小于边界的 值作为测试数据.根据题意,选X=10,X=11,X=99,X=100 完整的测试用例应该还考虑无效值,根据实际需求,可以再选X=9,X=101这 两种情况。 软件测试人员自身素质培养法则 (1) 首先

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论