白盒黑盒测试设计方法ppt课件_第1页
白盒黑盒测试设计方法ppt课件_第2页
白盒黑盒测试设计方法ppt课件_第3页
白盒黑盒测试设计方法ppt课件_第4页
白盒黑盒测试设计方法ppt课件_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、1 白盒测试技术设计方法白盒测试技术设计方法2 1、语句覆盖、语句覆盖 使程序中每个语句至少执行一次。使程序中每个语句至少执行一次。开场开场(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce只需设计一个测试用例只需设计一个测试用例: : 输入数据:输入数据:A=2A=2, B=0B=0, X=4X=4 即达到了语句覆盖。即达到了语句覆盖。语句覆盖是最弱的语句覆盖是最弱的逻辑覆盖逻辑覆盖(如:(如:AND AND 写成写成 OR OR,X1 X1 写成写成 X 1, X 1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+

2、1FFTTabdce可设计两组测试用例可设计两组测试用例: A=3,B=0 ,X=3 可覆盖可覆盖c、d分支分支 A=2,B=1 ,X=1 可覆盖可覆盖b、e分支分支 两组测试用例可覆盖所有两组测试用例可覆盖所有判定的真假分支判定的真假分支 判定覆盖仍是弱的逻辑覆判定覆盖仍是弱的逻辑覆盖,只覆盖了全部路径的盖,只覆盖了全部路径的一半。一半。43、条件覆盖、条件覆盖使每个判定的每个条件的可能取值至少执行一次。使每个判定的每个条件的可能取值至少执行一次。开场开场(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+1FFTTabdce满足条件满足条件:T1,T1, T2,

3、T2 T3,T3 T4,T4第一判定表达式第一判定表达式: :设条件设条件 A1 A1 取真取真 记为记为T1 T1 假假 T1 T1 条件条件 B=1 B=1 取真取真 记为记为T2 T2 假假 T2 T2第二判定表达式第二判定表达式: :设条件设条件 A=2 A=2 取真取真 记为记为T3 T3 假假 T3 T3 条件条件 X1 X1 取真取真 记为记为T4 T4 假假 T4 T45测试用例测试用例 通过通过 满足的满足的 覆盖覆盖A B X 途径途径 条件条件 分支分支1 0 3 abe T1,T2,T3,T4 b,e2 1 1 abe T1,T2,T3,T4 b,e 两个测试用例覆盖了

4、四个条件八种可能取值。两个测试用例覆盖了四个条件八种可能取值。 未覆盖未覆盖c、d分支,不满足判定覆盖的要求分支,不满足判定覆盖的要求. 条件覆盖不一定包含判定覆盖条件覆盖不一定包含判定覆盖 判定覆盖也不一定包含条件覆盖判定覆盖也不一定包含条件覆盖64 断定断定/条件覆盖条件覆盖 选取足够多的选取足够多的测试用例,使判断测试用例,使判断中的每个条件的所中的每个条件的所有可能取值至少执有可能取值至少执行一次,同时每个行一次,同时每个判断本身的所有可判断本身的所有可能判断结果至少执能判断结果至少执行一次行一次.开场开场(A1) AND (B=0)(A=2) OR (X1)返回返回X=X/AX=X+

5、1FFTTabdce满足条件满足条件:T1,T1, T2,T2 T3,T3 T4,T47测试用例测试用例 通过通过 满足的条件满足的条件 覆盖覆盖A B X 途径途径 分支分支2 0 4 ace T1,T2,T3,T4 c,e1 1 1 abd T1,T2,T3,T4 b,d能同时满足判定、条件两种覆盖标准的取值能同时满足判定、条件两种覆盖标准的取值8 5、条件组合覆盖、条件组合覆盖所有可能的条件取值组合至少执行一次所有可能的条件取值组合至少执行一次 A1, B=0 A1, B0 A 1, B=0 A 1, B0 A=2, X1 A=2, X 1 A2, X1 A2, X 1测试用例测试用例

6、通过通过 满足的满足的 覆盖覆盖A B X 途径途径 条件条件 分支分支2 0 4 ace T1,T2,T3,T4 c,e2 1 1 abe T1,T2,T3,T4 b,e1 0 2 abd T1,T2,T3,T4 b,d1 1 1 abd T1,T2,T3,T4 b,d9 以上根据测试数据对源程序语句检测的详以上根据测试数据对源程序语句检测的详尽程度,简单讨论了几种逻辑覆盖标准。在上尽程度,简单讨论了几种逻辑覆盖标准。在上面的分析过程中常常谈到测试数据执行的程序面的分析过程中常常谈到测试数据执行的程序路径,显然,测试数据可以检测的程序路径的路径,显然,测试数据可以检测的程序路径的多少,也反映

7、了对程序测试的详尽程度。从对多少,也反映了对程序测试的详尽程度。从对程序路径的覆盖程度分析,能够提出下述一些程序路径的覆盖程度分析,能够提出下述一些主要的逻辑覆盖标准。主要的逻辑覆盖标准。10黑盒测试着重测试软件功能。黑盒测试并不能取代黑盒测试着重测试软件功能。黑盒测试并不能取代白盒测试,它是与白盒测试互补的测试方法,它很白盒测试,它是与白盒测试互补的测试方法,它很可能发现白盒测试不易发现的其他类型的错误。可能发现白盒测试不易发现的其他类型的错误。黑盒测试力图发现下述类型的错误:黑盒测试力图发现下述类型的错误: 功能不正确功能不正确或遗漏了功能;或遗漏了功能; 界面错误;界面错误; 数据结构错

8、误或外数据结构错误或外部数据库访问错误;部数据库访问错误; 性能错误;性能错误; 初始化和终止初始化和终止错误。错误。黑盒测试技术:等价划分法、边界值分析法、错误黑盒测试技术:等价划分法、边界值分析法、错误推测法、因果图法等。推测法、因果图法等。6.7 黑盒测试技术理解)黑盒测试技术理解)11 1 1 等价类划分法等价分配)等价类划分法等价分配) 把所有可能的输入数据把所有可能的输入数据( (有效的和无有效的和无效的效的) )划分成若干个等价的子集划分成若干个等价的子集( (称为称为等价类别或等价区间等价类别或等价区间) ), 使得每个子使得每个子集中的一个典型值在测试中的作用与集中的一个典型

9、值在测试中的作用与这一子集中所有其它值的作用相同这一子集中所有其它值的作用相同. . 可从每个子集中选取一组数据来测试可从每个子集中选取一组数据来测试程序程序 等价类别或等价区间是指测试相同目等价类别或等价区间是指测试相同目标或者暴露相同软件缺陷的一组测试标或者暴露相同软件缺陷的一组测试用例用例 12例例: :某报表处理系统要求用户输入处理报某报表处理系统要求用户输入处理报表表 的日期,日期限制在的日期,日期限制在20192019年年1 1月至月至20192019年年 12 12月,即系统只能对该段期间内的报月,即系统只能对该段期间内的报表表 进行处理,如日期不在此范围内,则进行处理,如日期不

10、在此范围内,则显显 示输入错误信息。示输入错误信息。 系统日期规定由年、月的系统日期规定由年、月的6 6位数字字位数字字符组符组 成,前四位代表年,后两位代表月。成,前四位代表年,后两位代表月。 如何用等价类划分法设计测试用例如何用等价类划分法设计测试用例, , 来测试程序的日期检查功能?来测试程序的日期检查功能?13如何划分等价类?如何划分等价类?有效等价类有效等价类( (合理等价类合理等价类) )无效等价类无效等价类( (不合理等价类不合理等价类) ) 划分等价类的标准:划分等价类的标准:覆盖覆盖不相交不相交代表性代表性14划分等价类的规则划分等价类的规则 (1)(1)如果输入条件规定了取

11、值范围,可定义一个有如果输入条件规定了取值范围,可定义一个有 效等价类和两个无效等价类。效等价类和两个无效等价类。例例 输入值是学生成绩,范围是输入值是学生成绩,范围是0 01001000 1000 100 有效等价类有效等价类00成果成果100100无效等价类无效等价类 成果成果100100 无效等价类无效等价类 成果成果00(2)(2)如果输入条件代表集合的某个元素,则可定义如果输入条件代表集合的某个元素,则可定义 一个有效等价类和一个无效等价类。一个有效等价类和一个无效等价类。划分等价类的规则:划分等价类的规则:(3)(3)如规定了输入数据的一组值,且程序对不同输如规定了输入数据的一组值

12、,且程序对不同输 入值做不同处理,则每个允许的输入值是一个入值做不同处理,则每个允许的输入值是一个 有效等价类,并有一个无效等价类有效等价类,并有一个无效等价类( (所有不允所有不允 许的输入值的集合许的输入值的集合) )。例:输入条件说明学历可为例:输入条件说明学历可为: :专科、本科、硕士、博士专科、本科、硕士、博士四四 种之一,则分别取这四个值作为四个有效等价类种之一,则分别取这四个值作为四个有效等价类, 另外把四种学历之外的任何学历作为无效等价类另外把四种学历之外的任何学历作为无效等价类(4)(4)如果规定了输入数据必须遵循的规则,可确定如果规定了输入数据必须遵循的规则,可确定 一个有

13、效等价类符合规则和若干个无效等一个有效等价类符合规则和若干个无效等 价类从不同角度违反规则价类从不同角度违反规则) )。(5)(5)如已划分的等价类各元素在程序中的处理方式如已划分的等价类各元素在程序中的处理方式 不同,则应将此等价类进一步划分成更小的等不同,则应将此等价类进一步划分成更小的等 价类。价类。用等价类划分法设计测试用例步骤:用等价类划分法设计测试用例步骤:(1)(1)形成等价类表,每一等价类规定一个形成等价类表,每一等价类规定一个 唯一的编号;唯一的编号;(2)(2)设计一测试用例,使其尽可能多地覆设计一测试用例,使其尽可能多地覆 盖尚未覆盖的有效等价类,重复这一盖尚未覆盖的有效

14、等价类,重复这一 步骤,直到所有有效等价类均被测试步骤,直到所有有效等价类均被测试 用例所覆盖;用例所覆盖;(3)(3)设计一新测试用例,使其只覆盖一个设计一新测试用例,使其只覆盖一个 无效等价类,重复这一步骤直到所有无效等价类,重复这一步骤直到所有 无效等价类均被覆盖;无效等价类均被覆盖;第一步:等价类划分第一步:等价类划分输入条件输入条件 有效等价类有效等价类 无效等价类无效等价类 报表日期的报表日期的类型及长度类型及长度6 6位数字字符位数字字符(1)(1)有非数字字符有非数字字符 (4) (4)少于少于6 6个数字字符个数字字符 (5) (5)多于多于6 6个数字字符个数字字符 (6)

15、 (6)年份范围年份范围在在2019201920192019之间之间 (2) (2)小于小于2019 (7)2019 (7)大于大于2019 (8)2019 (8)月份范围月份范围在在1 11212之间之间(3)(3)“报表日期输入条件的等价类表报表日期输入条件的等价类表小于小于1 (9)1 (9)大于大于12 (10)12 (10)第二步:为有效等价类设计测试用例 测试数据测试数据 期望结果期望结果 覆盖范围覆盖范围201906201906等价类等价类(1)(2)(3)(1)(2)(3)输入有效输入有效对表中编号为对表中编号为1,2,31,2,3的的3 3个有效等价类用一个测试用个有效等价类

16、用一个测试用例覆盖:例覆盖:(1)6(1)6位数字字符位数字字符(2)(2)年在年在2019201920192019之间之间 (3)(3)月在月在1 11212之间之间第三步:为每一个无效等价类设至少 设计一个测试用例 测试数据测试数据 期望结果期望结果 覆盖范围覆盖范围003MAY003MAY等价类等价类(4)(4)输入无效输入无效2019520195等价类等价类(5)(5)输入无效输入无效20190052019005等价类等价类(6)(6)输入无效输入无效201905201905等价类等价类(7)(7)输入无效输入无效200905200905等价类等价类(8)(8)输入无效输入无效2019

17、00201900等价类等价类(9)(9)输入无效输入无效201913201913等价类等价类(10)(10)输入无效输入无效不能出现相同不能出现相同的测试用例的测试用例本例的本例的1010个等价类至个等价类至少需要少需要8 8个测试用例个测试用例例例: :对招干考试系统对招干考试系统“输入学生成绩子模块输入学生成绩子模块 设计测试录入准考证号的测试用例设计测试录入准考证号的测试用例准考证号数据格式定义:共准考证号数据格式定义:共6 6为数字组成,其中为数字组成,其中第一位为专业代号第一位为专业代号:1-:1-行政专业行政专业,2-,2-法律专业,法律专业,3-3-财经专业财经专业后后5 5位为

18、考生顺序号,编码范围为:位为考生顺序号,编码范围为: 行政专业准考证号码为行政专业准考证号码为:110001:110001111215111215 法律专业准考证号码为法律专业准考证号码为:210001:210001212019212019 财经专业准考证号码为财经专业准考证号码为:310001:310001314015314015 准考证号码的等价类划分准考证号码的等价类划分 有效等价类有效等价类: (1) 110001 : (1) 110001 111215 111215 (2) 210001 (2) 210001 212019 212019 (3) 310001 (3) 310001 3

19、14015 314015 无效等价类无效等价类: (4) - : (4) - 110000 110000 (5) 111216 (5) 111216 210000 210000 (6) 212019 (6) 212019 31000 31000 (7) 314016 (7) 314016 + + 等价类划分即把输入空间分解成等价类划分即把输入空间分解成一系列子域,软件在一个子域内的行一系列子域,软件在一个子域内的行为应是等价的。为应是等价的。 软件错误分为两类:软件错误分为两类: 计算错误计算错误 域错误域错误u针对计算错误的测试方法针对计算错误的测试方法u针对域错误的测试方法针对域错误的测试

20、方法: :测试域边界测试域边界u 划定的正确性划定的正确性2 2 边界值分析法边界值分析法边界值分析法与等价类划分边界值分析法与等价类划分法区别法区别(1)(1)边界值分析不是从某等边界值分析不是从某等价类中价类中 随便挑一个作为代表,随便挑一个作为代表,而是使而是使 这个等价类的每个边界这个等价类的每个边界都要作都要作 为测试条件。为测试条件。(2)(2)边界值分析不仅考虑输边界值分析不仅考虑输入条件,还要考虑输出空入条件,还要考虑输出空间产生的测试情况间产生的测试情况被测试被测试子子 域域测试内点测试内点测试外点测试外点 如果在悬崖峭壁边可以自信地安全行走,平地就不在话下。 如果软件在能力

21、达到极限时能够运行,那么在正常情况下就不会出什么问题。软件边界与悬崖很类似 边界条件类型边界条件类型 如果软件测试问题如果软件测试问题包含确定的边界包含确定的边界, ,那那么数据类型可能是么数据类型可能是: :数值数值字符字符位置位置数量数量速度速度地址地址尺寸尺寸还要考虑数据类型的还要考虑数据类型的特征特征: :第一个第一个/ /最后一个最后一个最小值最小值/ /最大值最大值开场开场/ /完成完成空空/ /满满最慢最慢/ /最快最快相邻相邻/ /最远最远超越超越/ /在内在内测试边界线测试边界线测试临近边界的合法数据测试临近边界的合法数据, ,以及刚超以及刚超过边界的非法数据过边界的非法数据

22、. .越界测试通常简单地加越界测试通常简单地加1 1或很小的数或很小的数 ( (对于最大值对于最大值) )和减和减1 1或很小的数或很小的数( (对对于最小值于最小值). ). 输入输入条件条件报表日报表日期的类期的类型及长型及长度度1 1个数字字符个数字字符5 5个数字字符个数字字符7 7个数字字符个数字字符有有1 1个非数字字符个非数字字符全部是非数字字符全部是非数字字符6 6个数字字符个数字字符显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错输入有效输入有效日期日期范围范围月份月份范围范围“报表日期(报表日期( 6位数字字符)位数字字符)”边界值分析法测试

23、用例边界值分析法测试用例测试用例说明测试用例说明测试数据测试数据期望结果期望结果选取理由选取理由5 52019520195201900520190052019.52019.5MAY-MAY-201905201905月份为月份为1 1月月月份为月份为1212月月月份月份11212201901201901201912201912201900201900201913201913201901201901201912201912201900201900201913201913输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错在有效范围在有效范围边界上

温馨提示

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

评论

0/150

提交评论