第14章黑盒测试方法精.ppt
《第14章黑盒测试方法精.ppt》由会员分享,可在线阅读,更多相关《第14章黑盒测试方法精.ppt(88页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第14章黑盒测试方法第1页,本讲稿共88页黑盒测试黑盒测试这种方法是把这种方法是把测试对象测试对象看做看做一个黑盒一个黑盒子子,测试人员完全不考虑程序内部,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的序的需求规格说明书,检查程序的功能是否符合它的功能说明。功能是否符合它的功能说明。黑盒测试又叫做黑盒测试又叫做功能测试功能测试或或数据驱动数据驱动测试测试。第2页,本讲稿共88页黑盒测试方法是在程序接口上进行测黑盒测试方法是在程序接口上进行测试,主要是为了发现以下错误试,主要是为了发现以下错误:是否有不正确或遗漏了的功能是否有
2、不正确或遗漏了的功能?在接口上,输入能否正确地接受在接口上,输入能否正确地接受?能否能否输出正确的结果输出正确的结果?是否有数据结构错误或外部信息是否有数据结构错误或外部信息是否有数据结构错误或外部信息是否有数据结构错误或外部信息(例如数例如数据文件据文件)访问错误访问错误?性能上是否能够满足要求性能上是否能够满足要求性能上是否能够满足要求性能上是否能够满足要求?是否有初始化或终止性错误是否有初始化或终止性错误?第3页,本讲稿共88页为什么需要不同类型的测试方法?为什么需要不同类型的测试方法?假假设设一一个个程程序序P P有有输输入入量量X X和和Y Y及及输输出出量量Z Z。在在字字长长为为
3、3232位位的的计计算算机机上上运运行行。若若X X、Y Y取取整整数数,按按黑黑盒盒方方法法进进行行穷穷举举测测试试,请请问问需需要要多多少少时间?(假设时间?(假设1 1毫秒钟执行一组数据)毫秒钟执行一组数据)PXYZ2 232322232 32/365 24 60 60 1000=5/365 24 60 60 1000=5亿年亿年 第4页,本讲稿共88页黑盒测试方法黑盒测试方法:等价类划分法等价类划分法 边界值分析法边界值分析法 因果图法因果图法 功能图法功能图法 错误推测法错误推测法第5页,本讲稿共88页一、等价类测试一、等价类测试计算机软件测试计算机软件测试第6页,本讲稿共88页等等
4、价价类类是是指指某某个个输输入入域域的的子子集集合合,在在该该子子集集合合中中,各各个个输输入入数数据据对对于于揭露程序中的错误都是等效的,或者进行相同的处理。揭露程序中的错误都是等效的,或者进行相同的处理。合合理理假假定定:测测试试某某等等价价类类的的一一组组数数据据就就等等价价于于对对这这一一类类其其他他值值的的测测试。试。1.等价类定义等价类定义等价类构成等价类构成-集合的划分集合的划分。划分等价类测试的重要划分等价类测试的重要意义意义:1.提供了完备性;提供了完备性;2.保证了无冗余性;保证了无冗余性;第7页,本讲稿共88页2.等价类分类等价类分类可分为有效等价类和无效等价类。可分为有
5、效等价类和无效等价类。有有效效等等价价类类:完完全全满满足足程程序序输输入入的的规规格格说说明明,有有效效、有有意意义义的的输入数据所构成的集合输入数据所构成的集合。-检验程序是否满足规格说明所规定的功能和性能检验程序是否满足规格说明所规定的功能和性能无无效效等等价价类类:不不满满足足程程序序输输入入要要求求,或或者者无无效效的的输输入入数数据据所所构构成成的集合的集合。-鉴鉴别别程程序序异异常常情情况况的的处处理理,保保障障在在输输入入错错误误或或空空时时仍有异常保护,保证程序的可靠性仍有异常保护,保证程序的可靠性第8页,本讲稿共88页3.等价类划分的原则等价类划分的原则1)输入条件规定了取
6、值范围或个数输入条件规定了取值范围或个数:确定确定1个有效等价类个有效等价类,2个无效等价类。个无效等价类。2)规定了输入值的集合或规定了输入值的集合或“必须如何必须如何”的条件:的条件:确定确定1个有效等价类个有效等价类,1个无效等价类。个无效等价类。年龄范围年龄范围 0100性别取值性别取值3)输入条件是布尔量:输入条件是布尔量:确定确定1个有效等价类个有效等价类,1个无效等价类。个无效等价类。4)规规定定了了一一组组输输入入数数据据(n个个),并并且且程程序序对对每每个个值分别处理:值分别处理:确定确定n个有效等价类个有效等价类,1个无效等价类。个无效等价类。5)规定了输入数据必须遵守的
7、规则:规定了输入数据必须遵守的规则:确定确定1个有效等价类个有效等价类,若干个无效等价类。若干个无效等价类。E_mail地址规则地址规则在在确确定定已已知知的的等等价价类类中中个个元元素素在在程程序序中中的的处处理理方方式式不不同同,则则应应将将等等价价类类进进一一步步划划分分成成更小的等价类。更小的等价类。第9页,本讲稿共88页4.等价类测试用例生成等价类测试用例生成1)选选择择确确定定类类的的等等价价关关系系,为为每每个个等等价价类类规规定定唯唯一一的的编编号。号。2)设设计计一一个个新新的的测测试试用用例例,使使其其尽尽可可能能多多的的覆覆盖盖尚尚未未被被覆覆盖盖的的有有效效等等价价类类
8、。重重复复直直到到覆覆盖盖所所有有有有效效等等价价类类,即即分分割有效等价类直到最小。割有效等价类直到最小。3)设设计计一一个个新新的的测测试试用用例例,使使其其尽尽可可能能多多的的覆覆盖盖尚尚未未被被覆覆盖盖的的无无效效等等价价类类。重重复复直直到到覆覆盖盖所所有有无无效效等等价价类类,即即分分割割无无效效等价类直到最小。等价类直到最小。第10页,本讲稿共88页5.等价类测试用例的种类等价类测试用例的种类 弱一般等价类测试用例弱一般等价类测试用例 强一般等价类测试用例强一般等价类测试用例 弱健壮等价类测试用例弱健壮等价类测试用例 强健壮等价类测试用例强健壮等价类测试用例计算机软件测试计算机软
9、件测试第11页,本讲稿共88页函数函数F的功能扩展的功能扩展有有两两个个变变量量x x1和和x x2的的函函数数F F。如如果果函函数数F F实实现现为为一一个个程程序序,则则输输入入两两个变量个变量x x1和和x x2会有一些会有一些(可能未规定可能未规定)边界:边界:a a x x1 d d 区间为区间为aa,b)b),bb,c)c),cc,d d e e x x2 g g 区间为区间为ee,f)f),f,g g abegcdf计算机软件测试计算机软件测试第12页,本讲稿共88页弱一般等价类测试弱一般等价类测试 弱一般等价类测试是基于单缺陷假设的弱一般等价类测试是基于单缺陷假设的;弱弱一一
10、般般等等价价类类测测试试通通过过使使用用一一个个测测试试用用例例中中的的每每个个等等价价类类(区区间间)的一个变量实现。的一个变量实现。abegcdf计算机软件测试计算机软件测试第13页,本讲稿共88页强一般等价类测试强一般等价类测试 强一般等价类测试是基于多缺陷假设的强一般等价类测试是基于多缺陷假设的;等价类笛卡儿积的每个元素对应的测试用例;等价类笛卡儿积的每个元素对应的测试用例;abegcdf计算机软件测试计算机软件测试第14页,本讲稿共88页弱健壮等价类测试弱健壮等价类测试 1 1对对于于有有效效输输入入,使使用用每每个个有有效效类类的的一一个个值值(就就像像我我们们在在所所谓谓弱一般等
11、价类测试中所做的一样。弱一般等价类测试中所做的一样。)2 2对对于于无无效效输输入入,测测试试用用例例将将拥拥有有一一个个无无效效值值,并并保保持持其其余余的的值值都都是有效的。是有效的。abegcdf计算机软件测试计算机软件测试第15页,本讲稿共88页强健壮等价类测试强健壮等价类测试 所有等价类笛卡儿积的每个元素中获得测试用例。所有等价类笛卡儿积的每个元素中获得测试用例。abegcdf计算机软件测试计算机软件测试第16页,本讲稿共88页简单版本:三角形问题接受三个整数简单版本:三角形问题接受三个整数a a、b b、c c作为输入,用做三角作为输入,用做三角形的边。程序的输出是由这三条边确定的
12、三角形类型,即等边三形的边。程序的输出是由这三条边确定的三角形类型,即等边三角形,等腰三角形,不等边三角形或非三角形。角形,等腰三角形,不等边三角形或非三角形。例例1:三角形问题的等价类测试用例三角形问题的等价类测试用例第一步:划分等价类第一步:划分等价类 R1=:有三条边:有三条边a、b和和c的等边三角形的等边三角形R2=:有三条边:有三条边a、b和和c的等腰三角形的等腰三角形R3=:有三条边:有三条边a、b和和c的不等边三角形的不等边三角形R4=:三条边:三条边a、b和和c不构成三角形不构成三角形 第二步:选取测试用例第二步:选取测试用例 测试用例abc预期输出WN1555等边三角形WN2
13、223等腰三角形WN3345三角形WN4412非三角形计算机软件测试计算机软件测试第17页,本讲稿共88页三角形问题的弱健壮等价类测试用例三角形问题的弱健壮等价类测试用例测试用例abc预期输出WR1-155a取值不在允许的范围内WR25-15b取值不在允许的范围内WR355-1c取值不在允许的范围内WR420155a取值不在允许的范围内WR552015b取值不在允许的范围内WR655201c取值不在允许的范围内计算机软件测试计算机软件测试改进版本改进版本:边长范围在边长范围在1200第18页,本讲稿共88页三角形问题的强健壮等价类测试用例三角形问题的强健壮等价类测试用例测试用例abc预期输出S
14、R1-1-15a、b取值不在允许的范围内SR25-1-1b、c取值不在允许的范围内SR3-15-1a、c取值不在允许的范围内SR4-1-1-1a、b、c取值不在允许的范围内计算机软件测试计算机软件测试第19页,本讲稿共88页三角形问题的另一种等价类划分三角形问题的另一种等价类划分 D1D1=a:a=b=c a=b=c D2 D2=ac:a a =b b,ac D3 D3=ac:a a =c c,ab D4 D4=ac:c c =b b,ac D5 D5=ac:b b a c D6D6=ac:a ab+c b+c D7 D7=ac:b ba+c a+c D8 D8=ac:c ca+b a+b 计
15、算机软件测试计算机软件测试第20页,本讲稿共88页例如例如:NextDate:NextDate函数的等价类测试用例函数的等价类测试用例确定等价类:确定等价类:无效等价类:无效等价类:M2=月份:月份月份:月份12D2=日期:日期日期:日期31Y2=年:年年:年2012有效等价类:有效等价类:M1=月份:月份:1月份月份12 D1=日期:日期:1日期日期31Y1=年:年:1812年年2012 计算机软件测试计算机软件测试输入年输入年月月日日,求下一天的日期求下一天的日期第21页,本讲稿共88页 NextDateNextDate函数的弱一般等价类测试用例函数的弱一般等价类测试用例用例ID月份日期年
16、预期输出WN1,SN161519126/16/1912计算机软件测试计算机软件测试第22页,本讲稿共88页 NextDateNextDate函数的弱健壮等价类测试用例函数的弱健壮等价类测试用例用例ID月份日期年预期输出WR161519126/16/1912WR2-1151912无效输入WR313151912无效输入WR46-11912无效输入WR56321912无效输入WR66151811无效输入WR76152013无效输入计算机软件测试计算机软件测试第23页,本讲稿共88页NextDateNextDate函数的强健壮等价类测试用例函数的强健壮等价类测试用例用例ID月份日期年预期输出SR1-1
17、151912无效输入SR26-11912无效输入SR36151811无效输入SR4-1-11912无效输入SR56-11811无效输入SR6-1151811无效输入SR7-1-11811无效输入计算机软件测试计算机软件测试第24页,本讲稿共88页NextDateNextDate函数的等价类另一种划分法函数的等价类另一种划分法M1=月份:每月有月份:每月有30天天 M2=月份:每月有月份:每月有31天天 M3=月份:此月是月份:此月是2月月 D1=日期:日期:1日期日期28D2=日期:日期日期:日期=29D3=日期:日期日期:日期=30D4=日期:日期日期:日期=31Y1=年:年年:年=1900
18、Y2=年:年是非年:年是非1900年的闰年年的闰年Y3=年:年是非年:年是非1900年的平年年的平年计算机软件测试计算机软件测试第25页,本讲稿共88页弱一般等价类测试用例弱一般等价类测试用例用例ID月份日期年预期输出WR161419006/15/2000WR272919967/30/1996WR32302002无效输入WR46311900无效输入计算机软件测试计算机软件测试强一般等价类测试用例强一般等价类测试用例测试用例的个数:测试用例的个数:MDY=3*4*3=36MDY=3*4*3=36 第26页,本讲稿共88页佣金问题佣金问题 前前亚亚利利桑桑那那州州境境内内的的一一位位步步枪枪销销售
19、售商商销销售售密密苏苏里里州州制制造造商商制制造造的的步步枪枪机机locklock、枪枪托托stockstock和和枪枪管管barrelbarrel。枪枪机机卖卖4545美美元元,枪托卖枪托卖3030美元,枪管卖美元,枪管卖2525美元。美元。销销售售商商每每月月至至少少要要售售出出一一支支完完整整的的步步枪枪,且且生生产产限限额额是是大大多多数数销销售售商商在在一一个个月月内内可可销销售售7070个个枪枪机机、8080个个枪枪托托和和9090个个枪枪管管。每每访访问问一一个个镇镇子子之之后后,销销售售商商都都给给密密苏苏里里州州步步枪枪制制造造商商发发出出电电报报,说说明明在在该该镇镇售售出
20、出的的枪枪机机、枪枪托托和和枪枪管管数数量量。到到了了月月末末,销销售售商商要要发发出出一一封封特特殊殊的的电电报报,通通知知-1-1个个枪枪机机被被售售出出,这这样样制制造造商商就就知知道道当当月月的销售情况。的销售情况。销销售售商商的的佣佣金金如如下下计计算算:销销售售额额不不到到(含含)10001000美美元元的的部部分分为为10%10%,10001000(不不含含)到到18001800(含含)美美元元的的部部分分为为1515,超超过过18001800美美元元的的部部分分为为20%20%。佣佣金金程程序序生生成成月月份份销销售售报报告告,汇汇总总售售出出的的枪机、枪托和枪管总数,销售商的
21、总销售额以及佣金。枪机、枪托和枪管总数,销售商的总销售额以及佣金。计算机软件测试计算机软件测试第27页,本讲稿共88页佣金问题的输入域等价类划分佣金问题的输入域等价类划分输入变量有效类:输入变量有效类:L1=枪机:枪机:1枪机枪机70L2=枪机:枪机枪机:枪机=-1S1=枪托:枪托:1枪托枪托80B1=枪管:枪管:1枪管枪管90输入变量无效类:输入变量无效类:L3=枪机:枪机枪机:枪机=0或枪机或枪机70S2=枪托:枪托枪托:枪托80B2=枪管:枪管枪管:枪管90 计算机软件测试计算机软件测试第28页,本讲稿共88页佣金问题的强健壮等价类测试用例佣金问题的强健壮等价类测试用例用例ID枪机枪托枪
22、管预期输出SR1-24045无效输入SR235-245无效输入SR33540-2无效输入SR4-2-245无效输入SR5-240-2无效输入SR63515-2无效输入SR7-2-2-2无效输入计算机软件测试计算机软件测试第29页,本讲稿共88页佣金问题的输出域等价类划分佣金问题的输出域等价类划分销售额销售额=45 枪机枪机+30 枪托枪托+25 枪管枪管 佣金值域定义三个变量的等价类:佣金值域定义三个变量的等价类:S1=:销售额:销售额1000S2=:1000销售额销售额1800S3=:销售额:销售额1800 计算机软件测试计算机软件测试第30页,本讲稿共88页佣金问题的输出域等价类测试用例佣
23、金问题的输出域等价类测试用例用例ID枪机枪托枪管销售额佣金OR155550050OR21515151500175OR32525252500360计算机软件测试计算机软件测试第31页,本讲稿共88页指导方针和观察指导方针和观察 等价类测试的弱形式等价类测试的弱形式(一般或健壮一般或健壮)不如对应的强形式的测试全面。不如对应的强形式的测试全面。如如果果实实现现语语言言是是强强类类型型的的(无无效效值值会会引引起起运运行行时时错错误误),则则没没有有必必要要使使用用健健壮形式的测试。壮形式的测试。如果错误条件非常重要,则进行健壮形式的测试是合适的。如果错误条件非常重要,则进行健壮形式的测试是合适的。
24、如如果果输输入入数数据据以以离离散散值值区区间间和和集集合合定定义义,则则等等价价类类测测试试是是合合适适的的。当当然然也也适适用用于于如如果变量值越界系统就会出现故障的系统。果变量值越界系统就会出现故障的系统。通过结合边界值测试,等价类测试可得到加强。通过结合边界值测试,等价类测试可得到加强。如如果果程程序序函函数数很很复复杂杂,函函数数的的复复杂杂性性可可以以帮帮助助标标识识有有用用的的等等价价类类,就就像像NextDate函数一样。函数一样。强强等等价价类类测测试试假假设设变变量量是是独独立立的的,相相应应的的测测试试用用例例相相乘乘会会引引起起冗冗余余问问题题。如如果果存存在在依依赖赖
25、关关系系,则则常常常常会会生生成成“错错误误”测测试试用用例例,就就像像NextDate函函数数一一样。样。在在发发现现“合合适适”的的等等价价关关系系之之前前,可可能能需需要要进进行行多多次次尝尝试试,就就像像NextDate函函数数例例子子一一样样。在在其其他他情情况况下下,存存在在“明明显显”或或“自自然然”等等价价关关系系。如如果果不不能能肯肯定定,最好对任何合理的实现进行再次预测。最好对任何合理的实现进行再次预测。第32页,本讲稿共88页练习练习1 1、请请以以NextDateNextDate函函数数的的3636个个强强一一般般等等价价类类测测试试用用例例为为基基础础,按所讨论的那样
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 14 黑盒 测试 方法
限制150内