第2章黑盒测试PPT讲稿.ppt
《第2章黑盒测试PPT讲稿.ppt》由会员分享,可在线阅读,更多相关《第2章黑盒测试PPT讲稿.ppt(103页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第2 2章黑盒测试章黑盒测试第1页,共103页,编辑于2022年,星期一第第2 2章章 黑盒测试黑盒测试1黑盒测试的基本概念黑盒测试的基本概念2等价类划分等价类划分3边界值分析法边界值分析法4因果图法因果图法5决策表法决策表法6黑盒测试方法的比较与选择黑盒测试方法的比较与选择7黑盒测试工具介绍黑盒测试工具介绍第2页,共103页,编辑于2022年,星期一1 1 黑盒测试的基本概念黑盒测试的基本概念 黑盒测试黑盒测试是从一种从软件外部对软件实施的测试,也称是从一种从软件外部对软件实施的测试,也称功能测试功能测试或或基于规格说明的测试基于规格说明的测试。(1)基本思想:基本思想:任何程序都可以看作
2、是从任何程序都可以看作是从输入定义域输入定义域到到输出值域输出值域的映射,的映射,这种观点将被测程序看作一个打不开的黑盒,黑盒里面的内容这种观点将被测程序看作一个打不开的黑盒,黑盒里面的内容(实现实现)是完全不知道的,只知道软件要做什么。因无法看到盒子中是完全不知道的,只知道软件要做什么。因无法看到盒子中的内容,所以不知道软件是如何实现的,也不关心黑盒里面的结的内容,所以不知道软件是如何实现的,也不关心黑盒里面的结构,只关心构,只关心软件的输入数据和输出结果。软件的输入数据和输出结果。第3页,共103页,编辑于2022年,星期一1 1 黑盒测试的基本概念黑盒测试的基本概念(2)黑盒测试方法作用
3、:黑盒测试方法作用:黑盒测试方法着重测试软件的功能需求,是在程序接口上进黑盒测试方法着重测试软件的功能需求,是在程序接口上进行测试。行测试。主要是为了发现以下错误主要是为了发现以下错误:n是否有不正确的功能,是否有遗漏的功能;是否有不正确的功能,是否有遗漏的功能;n在接口上,是否能够正确地接收输入数据并产生正确的输出在接口上,是否能够正确地接收输入数据并产生正确的输出结果;结果;n是否有数据结构错误或外部信息访问错误;是否有数据结构错误或外部信息访问错误;n性能上是否能够满足要求;性能上是否能够满足要求;n是否有程序初始化和终止方面的错误。是否有程序初始化和终止方面的错误。第4页,共103页,
4、编辑于2022年,星期一1 1 黑盒测试的基本概念黑盒测试的基本概念 (3)常用的黑盒测试方法常用的黑盒测试方法:等价类划分法等价类划分法边界值分析法边界值分析法决策表法决策表法因果图法因果图法每种方法各有所长,应针对软件开发项目的具体特点,每种方法各有所长,应针对软件开发项目的具体特点,选择合适的测试方法,有效地解决软件开发中的测试问题。选择合适的测试方法,有效地解决软件开发中的测试问题。第5页,共103页,编辑于2022年,星期一 2 2 等价类划分等价类划分 等价类划分等价类划分法是一种典型的黑盒测试方法,它完全不考虑程法是一种典型的黑盒测试方法,它完全不考虑程序的内部结构,序的内部结构
5、,只根据程序规格说明书对输入范围进行划分,把所有只根据程序规格说明书对输入范围进行划分,把所有可能的输入数据分类。可能的输入数据分类。程序输入域划分为若干个互不相交的子集,称为程序输入域划分为若干个互不相交的子集,称为等价类等价类,然后从,然后从每个等价类每个等价类中中选取少数具有代表性的数据选取少数具有代表性的数据作为作为测试用例测试用例,进行测试,进行测试。第6页,共103页,编辑于2022年,星期一2 2 等价类划分等价类划分-等价类划分方法等价类划分方法2.1等价类划分方法等价类划分方法等价类划分法等价类划分法是黑盒测试用例设计中一种常用的设计方法,它将不能是黑盒测试用例设计中一种常用
6、的设计方法,它将不能穷举的测试过程穷举的测试过程进行合理分类进行合理分类,从而保证设计出来的测试用例具有从而保证设计出来的测试用例具有完完整性整性和和代表性代表性。第7页,共103页,编辑于2022年,星期一2 2 等价类划分等价类划分-(1)划分等价类在划分等价类的过程中,一般分为两大类在划分等价类的过程中,一般分为两大类:有效等价类:有效等价类:指对软件规格说明来说,合理、有意义的输入数据所构成的集合。指对软件规格说明来说,合理、有意义的输入数据所构成的集合。无效等价类:无效等价类:指对软件规格说明来说,不满足程序输入要求或者无效的输入数据所构成指对软件规格说明来说,不满足程序输入要求或者
7、无效的输入数据所构成的集合。的集合。第8页,共103页,编辑于2022年,星期一(1 1)按区间划分:)按区间划分:如果规定了输入条件的取值范围或者个数,则可以确定一个有效等价类和两个无效等价类如果规定了输入条件的取值范围或者个数,则可以确定一个有效等价类和两个无效等价类 (2 2)按数值划分)按数值划分:如果规定了输入数据的一组值,并且程序要对每一个输入值分别进行处理,则可为每一个值确定一如果规定了输入数据的一组值,并且程序要对每一个输入值分别进行处理,则可为每一个值确定一个有效等价类,此外根据这组值确定一个无效等价类,即所有不允许的输入值的集合。个有效等价类,此外根据这组值确定一个无效等价
8、类,即所有不允许的输入值的集合。(3 3)按数值集合划分:)按数值集合划分:如果规定了输入值的集合,则可以确定一个有效等价类和一个无效等价类如果规定了输入值的集合,则可以确定一个有效等价类和一个无效等价类(4 4)按限制条件或规则划分:)按限制条件或规则划分:如果规定了输入数据必须遵守的规则,则可以确定一个有效等价类和若干个无效等价如果规定了输入数据必须遵守的规则,则可以确定一个有效等价类和若干个无效等价类类(5 5)细分等价类:)细分等价类:如果已知的等价类中各个元素在程序中的处理方式不同,则应将该等价类进一步划分成更小如果已知的等价类中各个元素在程序中的处理方式不同,则应将该等价类进一步划
9、分成更小的等价类的等价类2 2 等价等价类类划分划分-(2 2)等价等价类类划分原划分原则则第9页,共103页,编辑于2022年,星期一 在确立了等价类之后,可按下表的形式列出所有划分出的在确立了等价类之后,可按下表的形式列出所有划分出的等价类表:等价类表:表表1等价类表等价类表同样,也可按照输出条件,将同样,也可按照输出条件,将输出域划分为若干个等价类。输出域划分为若干个等价类。输入条件输入条件有效等价类有效等价类无效等价类无效等价类2 2 等价等价类类划分划分-等价等价类类的描述形式的描述形式第10页,共103页,编辑于2022年,星期一在设计测试用例时应同时考虑在设计测试用例时应同时考虑
10、有效等价类和无效等价类测试用例的设计有效等价类和无效等价类测试用例的设计。根据等价类表设计测试用例,具体步骤:根据等价类表设计测试用例,具体步骤:(1)为每个等价类规定一个唯一的编号。)为每个等价类规定一个唯一的编号。(2)设计一个新的测试用例,尽可能多地覆盖尚未被覆盖的有效等价类,设计一个新的测试用例,尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到测试用例覆盖了所有的有效等价类。重复这一步,直到测试用例覆盖了所有的有效等价类。(3)设计一个新的测试用例,使其覆盖并且只覆盖一个还没有被覆盖的无效等设计一个新的测试用例,使其覆盖并且只覆盖一个还没有被覆盖的无效等价类。重复这一步,直至测试
11、用例覆盖了所有的无效等价类价类。重复这一步,直至测试用例覆盖了所有的无效等价类。2 2 等价等价类类划分划分-(3 3)等价)等价类类划分划分测试测试用例用例设计设计第11页,共103页,编辑于2022年,星期一2.2等价类划分法的测试运用等价类划分法的测试运用例三角形问题的等价类测试例三角形问题的等价类测试问题问题:输入三个整数输入三个整数a、b和和c分别作为三角形的分别作为三角形的3条边长,通条边长,通过程序判断由这过程序判断由这3条边构成的三角形类型是:等边三角形、等腰三角条边构成的三角形类型是:等边三角形、等腰三角形、一般三角形或非三角形。形、一般三角形或非三角形。2 2 等价等价类类
12、划分划分-等价等价类类划分法的划分法的测试测试运用运用第12页,共103页,编辑于2022年,星期一 分析:分析:假设假设3个输入数据个输入数据a,b,c在在1100之间取值,三角形问题可以更详细之间取值,三角形问题可以更详细地描述为:地描述为:输入输入3个整数个整数a、b和和c分别作为三角形的三条边,要求分别作为三角形的三条边,要求a、b和和c必须必须满足以下条件:满足以下条件:Con11a10Con21b100Con31c100Con4ab+cCon5ba+cCon6ca+b如果如果a、b和和c满足满足Con1、Con2和和Con3,则输出为,则输出为4种情况之一:种情况之一:如果不如果不
13、满足条件足条件Con4、Con5和和Con6中有一个,中有一个,则程序程序输出出为“非三角形非三角形”。如果三条如果三条边相等,相等,则程序程序输出出为“等等边三角形三角形”。如果恰好有两条如果恰好有两条边相等,相等,则程序程序输出出为“等腰三角形等腰三角形”。如果三条如果三条边都不相等,都不相等,则程序程序输出出为“一般三角形一般三角形”。2 2 等价等价类类划分划分-等价等价类类划分法的划分法的测试测试运用运用第13页,共103页,编辑于2022年,星期一 标准等价类测试不考虑无效数据值标准等价类测试不考虑无效数据值,测试用例使用每个等价类中的,测试用例使用每个等价类中的一个值。一个值。对
14、于对于“三角形问题三角形问题”,从输出域来定义等价类是最简单的划分方从输出域来定义等价类是最简单的划分方法法。因此,可以确定下列值域等价类:因此,可以确定下列值域等价类: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 不能构成三角形不能构成三角形4个标准等价类测试用例如表个标准等价类测试用例如表4-4所示。所示。(1)采用)采用标准等价类划分标准等价类划分,实现测试,实现测试第14页,共103页,编辑于2022年
15、,星期一测试测试用例用例abc预预期期输输出出TC1202020等等边边三角形三角形TC2202010等腰三角形等腰三角形TC35810一般三角形一般三角形TC43610不构成三角形不构成三角形表表2-4 三角形问题的标准等价类测试用例三角形问题的标准等价类测试用例第15页,共103页,编辑于2022年,星期一(2)采用采用“健壮等价类健壮等价类”划分划分,实现测试,实现测试健壮等价类测试健壮等价类测试主要的出发点是考虑了主要的出发点是考虑了无效等价类无效等价类。对对有效输入有效输入,测试用例从,测试用例从每个有效等价类中取一个值每个有效等价类中取一个值;对对无效输入无效输入,一个测试用例有一
16、个无效值一个测试用例有一个无效值,其他值均取有其他值均取有效值效值。健壮等价类测试存在两个问题:健壮等价类测试存在两个问题:n需要花费精力定义无效测试用例的期望输出;需要花费精力定义无效测试用例的期望输出;n对强类型的语言没有必要考虑无效的输入对强类型的语言没有必要考虑无效的输入。第16页,共103页,编辑于2022年,星期一测试测试用例用例abc预预期期输输出出TC1345一般三角形一般三角形TC2-144a值值超出定超出定义义域范域范围围TC34-14b值值超出定超出定义义域范域范围围TC444-1c值值超出定超出定义义域范域范围围TC510144a值值超出定超出定义义域范域范围围TC64
17、1014b值值超出定超出定义义域范域范围围TC744101c值值超出定超出定义义域范域范围围三角形问题的健壮等价类测试用例三角形问题的健壮等价类测试用例对于对于“三角形问题三角形问题”,取,取a、b、c的无效值,的无效值,产生了产生了7个健壮等价类测试用例个健壮等价类测试用例。第17页,共103页,编辑于2022年,星期一(3 3)采用)采用“对等区间划分对等区间划分”等价类等价类,实现测试,实现测试 对等区间划分对等区间划分是测试用例设计的非常规形式化的方法。是测试用例设计的非常规形式化的方法。它将被测对象的输入它将被测对象的输入/输出划分成一些区间,被测软件输出划分成一些区间,被测软件对一
18、个特定区间的任何值都是等价的。对一个特定区间的任何值都是等价的。形成测试区间的数据不只是函数形成测试区间的数据不只是函数/过程的参数,也可以过程的参数,也可以是程序可以访问的全局变量、系统资源等,这些变量或资是程序可以访问的全局变量、系统资源等,这些变量或资源可以是以时间形式存在的数据,或以状态形式存在的输源可以是以时间形式存在的数据,或以状态形式存在的输入入/输出序列。输出序列。第18页,共103页,编辑于2022年,星期一例例2:平方根函数要求当输入值为平方根函数要求当输入值为0或大于或大于0时,返回输入数的时,返回输入数的平方根;当输入值小于平方根;当输入值小于0时,显示错误信息时,显示
19、错误信息“平方根错误,平方根错误,输入值小于输入值小于0”,并返回,并返回0。第19页,共103页,编辑于2022年,星期一输输入区入区间间输输出区出区间间=0=0BError通过分析,可以用通过分析,可以用2个测试用例来测试个测试用例来测试4个区间:个区间:测试用例测试用例1:输入:输入4,返回,返回2 /区间区间和和a测试用例测试用例2:输入:输入-10,返回,返回0,输出,输出“平方根错误,输入值小于平方根错误,输入值小于0”/区间区间和和b 分析:分析:考虑平方根函数的测试用例区间,可以划分出考虑平方根函数的测试用例区间,可以划分出两个输入两个输入区间区间和和两个输出区间两个输出区间。
20、第20页,共103页,编辑于2022年,星期一例例3:在某网站申请免费信箱时,要求用户必须输入用户名、密码在某网站申请免费信箱时,要求用户必须输入用户名、密码及确认密码,对每一项输入条件的要求如下:及确认密码,对每一项输入条件的要求如下:(1)用户名要求为)用户名要求为4位以上,位以上,16位以下,使用英文字母、数字、位以下,使用英文字母、数字、“-”、“_”,并且首字符必须为字母或数字;,并且首字符必须为字母或数字;(2)密码要求为密码要求为616位之间,只能使用英文字母、数字以及位之间,只能使用英文字母、数字以及“-”、“_”,并且区分大小写。,并且区分大小写。2 2 等价等价类类划分划分
21、-等价等价类类划分法的划分法的测试测试运用运用第21页,共103页,编辑于2022年,星期一分析:根据规格说明,列出等价类表分析:根据规格说明,列出等价类表 (包括有效等价类和无效等价类)(包括有效等价类和无效等价类)输输入入条件条件有效等价有效等价类类编编号号无效等价无效等价类类编编号号用用户户名名416位位1少于少于4位位8多于多于16位位9首字符首字符为为字母字母2首字符首字符为为除字母、数字之外除字母、数字之外的其他字符的其他字符10首字符首字符为为数字数字3英文字母、数字、英文字母、数字、“-”、“_”组组合合4组组合中含有除英文字母、数合中含有除英文字母、数字、字、“-”、“_”之
22、外的其他特之外的其他特殊字符殊字符11密密码码616位位5少于少于6位位12多于多于16位位13英文字母、数字、英文字母、数字、“-”、“_”组组合合6组组合中含有除英文字母、数合中含有除英文字母、数字、字、“-”、“_”之外的其他特之外的其他特殊字符殊字符14确确认认密密码码内容同密内容同密码码相同相同7内容同密内容同密码码相同,但字母大相同,但字母大小写不同小写不同15第22页,共103页,编辑于2022年,星期一根据上述等价类表,设计测试用例根据上述等价类表,设计测试用例测试测试用例用例用用户户名名密密码码确确认认密密码码预预期期输输出出TC1abc_2000abc_123abc_123
23、注册成功注册成功TC22000-abc123-abc123-abc注册成功注册成功TC3abc1234567812345678提示用提示用户户名名错误错误TC4abcdefghijk1234561234567812345678提示用提示用户户名名错误错误TC5_abc1231234567812345678提示用提示用户户名名错误错误TC6abc&1231234567812345678提示用提示用户户名名错误错误TC7abc_1231234512345提示密提示密码错误码错误TC8abc_123abcdefghijk123456abcdefghijk123456提示密提示密码错误码错误TC9ab
24、c_123abc&123abc&123提示密提示密码错误码错误TC10abc_123abc_123Abc_123提示密提示密码错误码错误第23页,共103页,编辑于2022年,星期一例例4保险公司人寿保险保费计算程序的等价类测试,某保险公司保险公司人寿保险保费计算程序的等价类测试,某保险公司人寿保险的保费计算方式为:人寿保险的保费计算方式为:保费投保额保费投保额保险费率保险费率其中,保险费率根据其中,保险费率根据年龄、性别、婚姻状况和抚养人数的不同而有年龄、性别、婚姻状况和抚养人数的不同而有所不同所不同,体现在不同年龄、性别、婚姻状况和抚养人数,点数设定,体现在不同年龄、性别、婚姻状况和抚养人
25、数,点数设定不同,不同,10点及点及10点以上保险费率为点以上保险费率为0.6%,10点以下保险费率为点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则见表。数来决定,具体规则见表。年龄年龄性别性别婚姻状况婚姻状况抚养人数抚养人数20394059其它其它MF已婚已婚未婚未婚1人扣人扣0.5点,点,最多扣最多扣3点点6点点4点点2点点4点点3点点3点点5点点2 2 等价等价类类划分划分-等价等价类类划分法的划分法的测试测试运用运用第24页,共103页,编辑于2022年,星期一 根据规格说明中给出和隐含的对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黑盒 测试 PPT 讲稿
限制150内