第3章(1) 黑盒测试方法1-等价类划分法

合集下载

黑盒测试错误推测功能图法(共12张PPT)

黑盒测试错误推测功能图法(共12张PPT)
③ 测试用例合成:合成测试路径与功能图中每个状态的局部测试用例。 功能图法设计测试用例,就是如何覆盖软件所表现出来的所有状态,可以转化为两个层次的测试用例
此模型只适用于描述静态说明。 动态说明:描述输入数据的次序或转移次序。
状态迁移图
❖ 状态迁移图,描述系统状态变化的动态信息——动态说明,由状态和迁移来描 述,状态指出数据输入的位置(或时间),而迁移则指明状态的改变 。用节 点表示状态,用弧度代替迁移,则状态迁移图就可转化成一个程序的控制流 程图形式。
状态的改变 。
一种黑盒白盒混合用例设计方法。 ④ 采用条件构造树测试用例的合成算法。
功能图法就是为了解决动态说明问题的一种测试用例的设计方法 常作为一种补充测试用例的设计方法 逻辑功能模型:用于表示在状态中输入条件和输出条件的对应关系。 功能图法是综合运用黑盒方法和白盒方法来设计测试用例,即整体上选用白盒方法——路径覆盖、分支和条件覆盖等,而局部上选用的
功能图法
❖ 每个程序的功能通常由静态说明和动态说明组成,静态说明描述了输 入条件和输出条件之间的对应关系,而动态说明描述了输入数据的次 序或者转移的次序。
❖ 功能图法就是为了解决动态说明问题的一种测试 用例的设计方法
❖ 功能图由状态迁移图(state transition diagram,STD)和逻辑功 能模型(logic function model, LFM)构成
逻辑功能模型
输入 输出 状态
逻辑功能模型的决策表形式(1—成功,0—失败)
正确的用户名 错误的密码 0 错误提示 等待重新输入
错误的用户名 正确的密码 0 错误提示 等待重新输入
错误的用户名 错误的密码 0 错误提示 等待重新输入
正确的用户名 正确的密码 1

黑盒测试法——等价类划分法

黑盒测试法——等价类划分法

⿊盒测试法——等价类划分法实验⽬的:1.掌握等价类划分的⽅法1. 掌握按等价类⽅法设计测试⽤例实验内容:1、请⽤等价类划分法为三⾓形问题划分等价类,并设计相应的测试⽤例,测试下⾯三⾓形问题程序,找出缺陷并改正,给出缺陷报告。

2、三⾓形问题:输⼊3个整数a 、b 、c ,分别作为三⾓形的3条边,通过程序判断由3条边构成的三⾓形的类型为等边三⾓形、等腰三⾓形、⼀般三⾓形或者3条边不构成三⾓形。

3、⽅案设计输⼊三条边a 、b 、c 必须满⾜以下条件:条件1: 1≤a≤100条件2: 1≤b≤100条件3: 1≤c≤100条件4: a <b +c条件5: b <a +c条件6: c <a +b如果输⼊值a 、b 、c 满⾜条件1、2、3,则输出下列四种情况之⼀:(1)如果不同时满⾜条件4、5、6,则程序输出“不构成三⾓形”。

(2)如果3条边相等,则程序输出为“等边三⾓形”。

(3)如果恰好有2条边相等,则程序输出为“等腰三⾓形”。

(4)如果3条边都不相等,则程序输出为“⼀般三⾓形”。

划分等价类输⼊条件输⼊三个整数 有效等价类 ⽆效等价类1、 整数2、 3个整数3、 ⾮0整数13、⼀边为⾮整数14、两边为⾮整数15、三遍为⾮整数16、数字个数⼩于317、数字个数⼤于318、⼀边为019、两边为020、三遍为021、⼀边⼩022、两边⼩于0 3、⾮0整数4、正数22、两边⼩于023、三边⼩于024、⼀边⼤于10025、两边⼤于100、三边⼤于100输出条件、 a+c>b、 b+c>a、b+c<=a、c+a<=b 、 a=b且满⾜5、 b=c且满⾜7、c=a且满⾜611、a=b=c12、不满⾜,6,7中的⼀个等价类划分测试⽤例等价类划分测试⽤例测试⽤例编号等价类条件测试⽤例预期结果a b c d11,2,3,4,5,6,7234 普通三⾓形21,2,3,4,5,6,7,8223 等腰三⾓形31,2,3,4,5,6,7,9232 等腰三⾓形41,2,3,4,5,6,7,10322 等腰三⾓形51,2,3,4,5,6,7,11222 等边三⾓形61,2,3,4,12123 不构成三⾓形71,2,3,4,5,6,7,13 2.134 不构成三⾓形(未测试) 81,2,3,4,5,6,8,14 2.1 2.13 不构成三⾓形(未测试) 91,2,3,4,5,6,9,15 2.1 2.1 2.1 不构成三⾓形(未测试) 101,3,4,,1623null 不构成三⾓形(未测试) 111,2,3,172343不构成三⾓形(未测试) 121,2,18023 抛出异常131,2,19002 抛出异常141,2,20000 抛出异常151,2,3,21-122 抛出异常161,2,3,22-1-22 抛出异常171,2,3,23-2-2-2 抛出异常181,2,3,4,241119999 抛出异常191,2,3,4,2511111199 抛出异常201,2,3,4,26111111111 抛出异常211,2,3,4,27235 不构成三⾓形221,2,3,4,28523 不构成三⾓形231,2,3,4,29253 不构成三⾓形。

黑盒测试用例设计方法

黑盒测试用例设计方法

⿊盒测试⽤例设计⽅法⼀、等价类划分法 该⽅法是将系统的输⼊域划分为若⼲部分,然后从每个部分选取少数代表性数据进⾏测试,这样可以避免穷举法产⽣的⼤量⽤例。

等价类是指某个输⼊域的⼦集合,在该⼦集合中,各个输⼊数据对于揭露软件中的错误都是等效的。

并合理地假定:测试某等价类的代表值就等于对这⼀类其它值的测试。

有效等价类:是指对于系统的规格说明来说是合理的,有意义的输⼊数据构成的集合。

利⽤有效等价类可以验证程序是否实现了规格说明中所规定的功能和性能。

⽆效等价类:是指对于系统的规格说明来说是不合理或⽆意义的输⼊数据所构成的集合。

设计测试⽤例时,要同时考虑这两种等价类。

因为,软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具备有更⾼的可靠性。

1、划分等价类 基于特性测试⼦项所对应的 SRS ⽚段,可以参考下⾯⼏条原则:1.在输⼊条件规定了取值范围或值的个数的情况。

例⼦:在1<x<5中。

⼀个有效等价类:1<x<5,两个⽆效等价类:x>=5 和 x<=1。

2.在输⼊条件规定了输⼊值的集合或者规定了必定如何的条件的情况下,可确⽴⼀个有效等价类和⼀个⽆效等价类。

例⼦:规定字段”星期”是输⼊星期⼏。

该输⼊条件⼀个有效等价类是输⼊的值属于从星期⼀到星期⽇的集合,⼀个⽆效等价类是不属于星期⼀到星期⽇的其他值。

3.在输⼊条件是⼀个布尔量的情况。

例⼦:性别,如果规定输⼊“男”为有效,则⼀个有效等价类:“男”,⼀个⽆效等价类:“⼥”。

4.在规定了输⼊数据的⼀组值假定 n 个,并且程序要对每⼀个输⼊值分别处理的情况下,可确⽴ n 个有效等价类和⼀个⽆效等价类。

例⼦:PPT的打印效果分为幻灯⽚加框和幻灯⽚不加框,则对于打印效果这个输⼊条件,n (这⾥ n =2)个有效等价类:幻灯⽚加框,幻灯⽚不加框;⼀个⽆效等价类:加框和不加框外的其他值。

5.在规定了输⼊数据必须遵守的规则的情况下,可确⽴⼀个有效等价类符合规则和若⼲个⽆效等价类从不同⾓度违反规则。

黑盒测试--等价类划分

黑盒测试--等价类划分

⿊盒测试--等价类划分1.1. 概念等价类划分法是把程序的输⼊域划分成若⼲部分(⼦集),然后从每个部分中选取少数代表性数据作为测试⽤例。

每⼀类的代表性数据在测试中的作⽤等价于这⼀类中的其他值。

1.2 等价类划分法的应⽤1 等价类是指某个输⼊域的⼦集合。

在该⼦集合中,各个输⼊数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这⼀类其它值的测试.因此,可以把全部输⼊数据合理划分为若⼲等价类,在每⼀个等价类中取⼀个数据作为测试的输⼊条件,就可以⽤少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和⽆效等价类。

有效等价类:是指对于程序的规格说明来说是合理的,有意义的输⼊数据构成的集合.利⽤有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。

⽆效等价类:与有效等价类的定义恰巧相反。

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

2划分等价类的六⼤原则:⑴在输⼊条件规定了取值范围或值的个数的情况下,则可以确⽴⼀个有效等价类和两个⽆效等价类.例:输⼊值是学⽣成绩,范围是0~100:⑵在输⼊条件规定了输⼊值的集合或者规定了“必须如何”的条件的情况下,可确⽴⼀个有效等价类和⼀个⽆效等价类.⑶在输⼊条件是⼀个布尔量的情况下,可确定⼀个有效等价类和⼀个⽆效等价类. 布尔量是⼀个⼆值枚举类型, ⼀个布尔量具有两种状态: true 和 false 。

⑷在规定了输⼊数据的⼀组值(假定n个),并且程序要对每⼀个输⼊值分别处理的情况下,可确⽴n个有效等价类和⼀个⽆效等价类.例:输⼊条件说明输⼊字符为:中⽂、英⽂、阿拉伯⽂三种之⼀,则分别取这三种这三个值作为三个有效等价类,另外把三种字符之外的任何字符作为⽆效等价类。

⑸在规定了输⼊数据必须遵守的规则的情况下,可确⽴⼀个有效等价类(符合规则)和若⼲个⽆效等价类(从不同⾓度违反规则)⑹在确知已划分的等价类中各元素在程序处理中的⽅式不同的情况下,则应再将该等价类进⼀步的划分为更⼩的等价类3、将等价类转化成测试⽤例:按照[输⼊条件][有效等价类][⽆效等价类] 建⽴等价类表,列出所有划分出的等价类为每⼀个等价类规定⼀个唯⼀的编号.设计⼀个新的测试⽤例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这⼀步.直到所有的有效等价类都被覆盖为⽌.设计⼀个新的测试⽤例,使其仅覆盖⼀个尚未被覆盖的⽆效等价类,重复这⼀步.直到所有的⽆效等价类都被覆盖为⽌.1.3实例 +笔记笔记等价类划分3将等价类转化对于有效等价类,使其尽可能多地覆盖尚未被覆盖地有效等价类成测试⽤例使其仅覆盖⼀个尚未被覆盖的⽆效等价类2.3实例例1:⼈寿保险费率(基本保险费0.50)Xs分析: 等价类划分、边界值分析结合使⽤序号输⼊条件输⼊类型测试数据预期结果1⼩于等于0岁(<=0岁)⽆效-1警告信息235岁以下有效20计算出⽉保险费335-59岁有效51计算出⽉保险费460岁以上有效65计算出⽉保险费边界值分析法序号边界值测试数据预期结果100警告信息23535按额外保险费2.87:计算35959按额外保险费2.87:计算46060按额外保险费6.00:计算实例2免费邮箱申请:在某⽹站申请免费信箱时,要求⽤户必须输⼊⽤户名、密码及确认密码,对每⼀项输⼊条件的要求如下:⽤户名:要求为4位以上,16位以下,使⽤英⽂字母、数字、“-”、“_”,并且⾸字符必须为字母或数字;密码:要求为6~16位之间,只能使⽤英⽂字母、数字以及“-”、“_”,并且区分⼤⼩写。

黑盒测试等价类划分法

黑盒测试等价类划分法

实验1、黑盒测试:等价类划分法
一、实验目的
1、掌握等价类的概念。

2、掌握等价类划分法的测试用例设计方法。

二、实验内容
对三角问题使用等价类划分的方法来设计测试用例,并执行测试,然后撰写实验报告。

三角形问题:规定输入三个整数a、b、c分别作为三边的边长构成三角形。

通过程序判定所构成的三角形的类型(等边三角形、等腰三角形、一般三角形、构不成三角形),并在屏幕上输出0<a,b,c<200输入数据时进行有效性检验。

用C或Java或其它语言写出源程序。

三、实验步骤:
①划分等价类,得到等价类表。

等价类表格式如下:
②运用弱健壮等价类测试用例设计法设计测试用例,得到测试用例表。


③执行测试,填写软件缺陷报告。

简单软件缺陷报告格式如下:。

等价类划分法含例子

等价类划分法含例子

1.等价类划分法等价类划分是一种典型的黑盒测试方法,使用这一方法时,完全不考虑程序的内部结构,只依据程序的规格说明来设计测试用例。

等价类划分方法把所有可能的输入数据,即程序的输入域划分成若干部分,然后从每一部分中选取少数有代表性的数据做为测试用例。

使用这一方法设计测试用例要经历划分等价类(列出等价类表)和选取测试用例两步。

2.划分等价类:等价类是指某个输入域的子集合。

在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。

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

等价类的划分有两种不同的情况:①有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。

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

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

对于具体的问题,无效等价类至少应有一个,也可能有多个。

在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。

3.划分等价类的标准:1)完备测试、避免冗余;2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合;3)并是整个集合:完备性;4)子集互不相交:保证一种形式的无冗余性;5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到"相同的执行路径".4.划分等价类的原则。

(1) 如果输入条件规定了取值范围,或值的个数,则可以确立一个有效等价类和两个无效等价类。

例如,在程序的规格说明中,对输入条件有一句话:“…… 项数可以从1到999 ……”则有效等价类是“1≤项数≤999”两个无效等价类是“项数<1”或“项数>999”。

实验一 黑盒测试法——等价类划分法

实验一 黑盒测试法——等价类划分法

实验一黑盒测试法——等价类划分法实验目的:1.掌握等价类划分的方法2.掌握按等价类方法设计测试用例实验内容:1、请用等价类划分法为三角形问题划分等价类,并设计相应的测试用例,测试下面三角形问题程序,找出缺陷并改正,给出缺陷报告。

#include "iostream.h"void main(){int a,b,c;cout<<"请输入三角形的三条边(界于1-100之间)"<<endl;cin>>a>>b>>c;if(a<=1||a>=100)cout<<"a的值超过允许的范围!";if(b<=1||b>=100)cout<<"b的值超过允许的范围!";if(c<=1||c>=100)cout<<"c的值超过允许的范围!";if(a+b>c||a+c>b||b+c>a)cout<<"a,b,c的值不能构成三角形!";if(a==b&&b==c)cout<<"是等边三角形!";if(a==b||b==c||a==c)cout<<"是等边三角形!";if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!";}三角形问题:划分等价类测试用例:1、覆盖有效等价类的测试用例2、覆盖无效等价类的测试用例缺陷报告:测试人修正人确认人修正日期年月日缺陷编号2用例编号 1 缺陷类型代码错误严重级别严重优先级优先缺陷状态New测试阶段单元□ 集成□系统□ 验收□ 其它()可重现性是□否BUG原因□需求分析基本设计□ 详细设计□ 设计式样理解□ 编程□数据库设计□ 环境配置□ 其它()缺陷描述输入正确的三个数,不能进行正确的判断三角形的类型预期结果是一般三角形!重现步骤备注1、在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码if(a+b>c||a+c>b||b+c>a)cout<<"a,b,c的值不能构成三角形!";改成if(a+b<c||a+c<b||b+c<a)cout<<"a,b,c的值不能构成三角形!";测试人修正人确认人修正日期年月日缺陷编号3 用例编号2~4 缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元□ 集成□系统□ 验收□ 其它()可重现性是□否BUG原因□需求分析基本设计□ 详细设计□ 设计式样理解□ 编程□数据库设计□ 环境配置□ 其它()缺陷描述输入正确的三个数,不能正确判断三角形的类型预期结果等腰三角形重现步骤备注在VC++6.0中运行源程序输入数据如图所以:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a==b&&b==c)cout<<"是等边三角形!";改为:if((a==b&&b!=c)||(a==c&&c!=b)||(b==c&&a!=c))cout<<"是等腰三角形!";测试人修正人确认人修正日期年月日缺陷编号 4 用例编号6~12,20~39 缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元□ 集成□系统□ 验收□ 其它()可重现性是□否BUG原因□需求分析基本设计□ 详细设计□ 设计式样理解□ 编程□数据库设计□ 环境配置□ 其它()缺陷描述输入无效数据,不能判定能否构成三角形预期结果给出提示判断是否为有效的输入重现步骤备注在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!";改为:if((a>0&&a<=100)&&(b>0&&b<=100)&&(c>0&&c<=100)){if(a!=b&&b!=c&&c!=a)cout<<"一般三角形!";}测试人修正人确认人修正日期年月日缺陷编号 5 用例编号40~45 缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元□ 集成□系统□ 验收□ 其它()可重现性是□否BUG原因□需求分析基本设计□ 详细设计□ 设计式样理解□ 编程□数据库设计□ 环境配置□ 其它()缺陷描述输入不能构成三角形的有效数据,不能判定是否为三角形预期结果不能构成三角形重现步骤备注在VC++6.0中运行源程序输入数据如图所示:以下部分由BUG修改人填写缺陷修改描述将以下代码:if(a<>b&&b<>c&&c<>a)cout<<"一般三角形!";改为:if((a>0&&a<=100)&&(b>0&&b<=100)&&(c>0&&c<=100)){if((a!=b&&b!=c&&c!=a)&&(a+b>c&&a+c>b&&b+c>a))cout<<"一般三角形!";}测试人修正人确认人修正日期年月日缺陷编号6用例编号13~19 缺陷类型严重级别严重优先级优先缺陷状态New测试阶段单元□ 集成□系统□ 验收□ 其它()可重现性是□否BUG原因□需求分析基本设计□ 详细设计□ 设计式样理解□ 编程□数据库设计□ 环境配置□ 其它()缺陷描述只输入三角形的一边或两边,程序进入等待的状态,没有提示。

黑盒测试方法

黑盒测试方法

黑盒测试是一种基于证明功能需求和用户最终需求的测试方法,设计黑盒测试用例的方法有如下8种:等价类划分法。

边界值分析法。

因果图法。

判定表驱动测试。

场景法。

功能图法。

错误推测法。

正交试验设计法。

在实际测试工作中,往往是综合使用各种方法才能有效地提高测试效率和测试覆盖率,这就需要认真掌握这些方法的原理,积累更多的测试经历,以有效地提高测试水平和测试效率。

下面就将主要介绍这8种设计黑盒测试用例的方法。

等价类划分等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据〔有效的和无效的〕划分成假设干个等价类。

然后从每个局部中选取具有代表性的数据当做测试用例进展合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。

利用这一方法设计测试用例可以不考虑程序的部构造,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。

由于等价类是在需求规格说明书的根底上进展划分的,并且等价类划分不仅可以用来确定测试用例中的数据的输入输出的准确取值围,也可以用来准备中间值、状态和与时间相关的数据以及接口参数等,所以等价类可以用在系统测试、集成测试和组件测试中,在有明确的条件和限制的情况下,利用等价类划分技术可以设计出完备的测试用例。

这种方法可以减少设计一些不必要的测试用例,因为这种测试用例一般使用一样的等价类数据,从而使测试对象得到同样的反映行为。

对于等价类我们从以下几个方面讨论它的划分方法。

1、等价类划分等价类可以划分为有效等价类和无效等价类。

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

利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。

有效等价类可以是一个,也可以是多个,根据系统的输入域划分假设干局部,然后从每个局部中选取少数有代表性数据当做数据测试的测试用例,等价类是输入域的集合。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 如何划分?——先从程序的规格说明书中 找出各个输入条件,再为每个输入条件划 分两个或多个等价类,形成若干的互不相 交的子集。
• 举例:划分 加法器程序的等价类,给出 测试用例.程序功能计算两个1~100之间 整数的和
2、如何划分等价类-2 Logo
• 刚才给出的 测试用例 都是整数,如果输 入的是小数、字符怎么办?
2、设计测试用例的基本准则 Logo
• 测试用例的代表性
能够代表并覆盖各种合理的和不合理的、合法 的和非法的、边界的和越界的以及极限的输入数据、 操作和环境设置等。
• 测试结果的可判定性
即测试执行结果的正确性是可判定的,每一个 测试用例都应有相应的期望结果。
• 测试结果的可再现性
即对同样的测试用例,系统的执行结果应当是 相同的。
2、等价类的类型 Logo
• 有效等价类
– 对规格说明而言,有意义、合理的输入数据 所组成的集合;
– 检验程序是否实现了规格说明预先规定的功 能和性能。
• 无效等价类
– 对规格说明而言,无意义的、不合理的输入 数据所组成的集合;
– 检查被测对象的功能和性能的实现是否有不 符合规格说明要求的地方。
3、如何划分等价类-1 Logo
Logo
(3)按照数值集合划分——在输入条件规定 了输入值的集合或规定了“必须如何”的 条件下,可以确定一个有效等价类和一个 无效等价类(该集合有效值之外)。
例:程序输入用户口令的长度必须是4位 的串,可以确定一个邮箱等价类是串的长 度为4,一个无效等价类长度不为4。
Logo
(4)按照限制条件或规则划分——在规定 了输入数据必须遵守的规则或限制条件 的情况下,可确定一个有效等价类(符 合规则)和若干个无效等价类(从不同 角度违反规则)。
黑盒测试用例设计的几种方法 Logo
• (一)等价类划分法 • (二)边界值分析法 • (三)决策表法 • (四)因果图法 • (五)场景法
(一)1、等价类划分法的思想-1 Logo
• 等价类划分设计方法是把所有可能的输入 数据,即程序的输入域划分成若干部分 (子集),然后从每一个子集中选取少量 具有代表性的数据作为测试用例。
现在要求输入三个整数a、b、c,必须满足以下条 件:
条件1 1≤a≤100 a<b+ c
条件4
条件2 1≤b≤100 b<a+ c
条件5
预备知识:1、测试用例的定义和特征 Logo
• 测试用例的定义: (1)测试用例是为特定的目的而设计的一组
测试输入、 执行条件和预期的结果。 (2)测试用例是执行的最小实体。 • 测试用例的特征: (1)最有可能抓住错误的; (2)不是重复的、多余的; (3)一组相似测试用例中最有效的; (4)既不是太简单,也不是太复杂。
Logo
(2)按照数值划分——在规定了一组输 入数据(假设包括 n个 输入值),并且 程序要对每一个输入值分别进行处理的情 况下,可确定 n 个有效等价类(每个值 确定一个有效等价类)和一个无效等价类 (所有不允许的输入值的集合)。
例:程序输入x取值于一个固定的枚举类型{1,3,7,15}, 且程序 中对这4个数值分别进行了处理,则有效等价类 为x=1、x=3、 x=7、x=15,无效等价类为x≠1,3,7,15的 值的集合。
例:程序输入条件为取值为奇数的整数x, 则有效等价类为x的值为奇数的整数,无 效等价类为x的值不为奇数的整数。在程序中的处理方式不同的情况下,则 应再将该等价类进一步划分为更小的等价类, 并建立等价类表。
例:程序输入条件为以字符‘a’开头、长度为8 的字符串,并且字符串不包含‘a’~ ‘z’之 外的其它字符,则有效等价类为满足了上述所 有条件的字符串,无效等价类为不以‘a’开 头的字符串、长度不为8的字符串和包含了 ‘a’~ ‘z’之外其它字符的字符串。
等价类划分法的思想-2 Logo
• 定义:将程序的输入域划分为若干部分,然后从每 个部分中选取少数代表性数据当作测试用例。
• 原因:由于实现穷举测试的不可能性,只有从大量 的可能数据中选取一部分作为测试用例。
• 效果:经过类别划分后,每一类的代表性数据在测 试中的作用都等价于这一类中的其他值。
• 手段:在设计测试用例时,在需求说明的基础上划 分等价类,列出等价表,从而确定测试用例。
• (3)画出示意图,区分等价类 • (4)为每一个等价类编号。 • (5)考虑输出,进行补充
4、等价类的划分原则
Logo
(1)按照区间划分——在输入条件规定了 取值范围或值的个数的情况下,可以确定 一个有效等价类和两个无效等价类。
例:程序输入条件为小于100大于10的整数x ,则有效等价类为10<x<100,两个无效等 价类为x≤10和x≥100。
5、等价类划分法设计测试用例的步骤
Logo
(1)确定等价类
(2)建立等价类表,列出所有划分出的等价类
(3)从划分出的等价类中按以下的3个原则设计测 试用例:
A 为每一个等价类规定一个唯一的编号 B 设计一个新的测试用例,使其尽可能多 的覆盖尚未被覆盖的有效等价类,重复这一步, 直到所有的有效等价类都被覆盖为止。 C 设计一个新的测试用例,使其仅覆盖一 个尚未被覆盖的无效等价类,重复这一步,直到 所有的无效等价类都被覆盖为止。
• 只考虑了输入数据的范围,没有考虑输入 数据的类型。
考虑输入数据类型和范围
Logo

数值
• 加数:
整数
<1(1) 1~100(2)
>100(3)
小数(4)
非数值
字母(5) 特殊字符(6) 空格(7)
空白(8)
3、等价类划分步骤 Logo
• (1)先考虑输入数据的类型(合法型和非 法型)
• (2)再考虑数据范围(合法型中的合法区 间和非法区间)
软件测试
第3章 黑盒测试方法
——等价类划分法
目录
1 测试用例的定义及特征
2 等价类划分法的思想
3
如何划分等价类
4
等价类划分原则
5 常见等价类划分形式
Logo
提出问题:针对三角形问题,你 Logo 会怎样去做测试?
三角形问题
输入三个整数a、b、c,分别作为三角形的三条边, 现通过程序判断由三条边构成的三角形的类型为等边三角形、 等腰三角形、一般三角形(特殊的还有直角三角形),以及 构不成三角形。
相关文档
最新文档