




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章 黑盒测试方法1黑盒测试法概述1边界值测试2等价类测试3基于决策表的测试4主要内容错误推测法523.1 黑盒测试法概述又称为功能测试或数据驱动测试,把程序看成一个黑盒子,完全不考虑程序的内部结构和处理程序,只是在程序的接口进行测试,以检查程序功能是否正常,程序是否能适当接收输入数据产生正确的输出数据。检查程序功能是否按照需求规格说明书的规定正常使用,测试每个功能是否有遗漏,检测性能等特性要求是否满足要求。检测模块接口是否存在问题。检测程序初始化和终止方面的错误。3黑盒测试13542等价类划分法边界值分析法其它决策表法错误推测法43.2 边界值测试任何程序都可以看成是一个函数程序的输入构成
2、函数的定义域程序的输出构成函数的值域基本原理错误更可能出现在输入变量的极值附近例如:程序把=误写成了基本思想是测试时输入变量取最小值(min)略高于最小值(min+)正常值(nom)略低于最大值(max-)最大值(max)5边界值分析设计测试用例的获得通过使所有变量取正常值,只使一个变量按边界值基本思想循环取值。例如:两变量函数的边界值分析测试用例为:(Xnom,Ymin)(Xnom,Ymin+)(Xnom,Ynom)(Xnom,Ymax-)(Xnom,Ymax)(Xmin,Ynom)(Xmin+,Ynom)(Xmax-,Ynom)(Xmax,Ynom)对于一个n变量函数,测试用例数为4n+1
3、个6假设aXb,cYd。区间a,b和c,d是X、Y的值域,程序F的输入定义域图所示,即带阴影矩形中的任何点都是程序F的有效输入。7基于输入项X,Y边界测试用例的设计如下图8练习1:有二元函数f(x,y),其中x1,12,y1,31。 则采用边界值分析法设计的测试用例是:9健壮性测试是边界值分析的一种简单扩展,用于观察例外处理情况基本思想是测试时输入变量取最小值(min)略高于最小值(min+)正常值(nom)略低于最大值(max-)最大值(max)略超过最大值(max+)略低于最小值(min-)对于一个有n个变量的程序,健壮性边界值会产生6n+1个测试用例。10基于输入项X,Y边界健壮性测试用
4、例的设计如下图11最坏情况测试考虑多个变量取极值的情况最坏情况测试用例的获得所有变量均可取最小值(min)、略高于最小值(min+)、正常值(nom)、略低于最大值(max-)、最大值(max) 这五个元素中的任何一个。测试用例为五个集合的笛卡儿乘积N变量的最坏情况测试会产生5n个测试用例健壮最坏情况测试N变量的健壮最坏情况测试会产生7n个测试用例12案例分析-三角形问题案例:三角形问题三角形问题接受三个整数a、b、c作为输入,代表三角形的三条边。a,b,c必须满足以下条件:C1.1=a=200C2.1=b=200C3.1=c=200C4.ab+cC5.ba+cC6.c 100 0 R = 1
5、00R 100 R= P = 100P N10= 1 N10 = 0 N5 = 1 N5 = 0 4N1= 1 N1 = 018找零钱最佳组合三、分析规格中每一决策点的情形考虑输出找零数额(RR表示找零数额)1、无效输入(不找零):R100,R=00R 100,0R=100 P R输出为相应错误提示信息。2、有效输入(找零):0 R =100 & R= P = 10019找零钱最佳组合此时考虑的输出:0=RR55=RR1010=RR5050=RR100四.用边界值分析法,取RR的有代表性的值,则RR分别取:0、1、4、5、9、10、49、50、99 20找零钱最佳组合五、为满足以上之各种情形,
6、测试用例设计如下:1.货品价格=101 无效货品价格2.货品价格=0 无效货品价格3.货品价格=-1 无效货品价格4.货品价格=100, 付款金额=101 无效付款5.货品价格=100, 付款金额=99 无效付款6.货品价格=100, 付款金额=100 不找零7.货品价格=99, 付款金额=100 N118.货品价格=96, 付款金额=100 N149.货品价格=95, 付款金额=100 N5121找零钱最佳组合10.货品价格=91, 付款金额=100 N5=1, N1=411.货品价格=90, 付款金额=100 N10=112.货品价格=51, 付款金额=100 N10=4, N5=1,N1
7、=413.货品价格=50, 付款金额=100 N50=114.货品价格=1, 付款金额=100 N50=1,N10=4,N5=1,N1=4223.3 等价类测试动机希望进行完备的测试希望避免冗余,不可能穷举等价类的划分根据等价关系对输入或输出数据的集合进行划分将集合划分为互不相交的子集(无冗余性)这些子集的并是整个集合(完备性)测试思想通过每个等价类中的一个元素标识测试用例例如,在三角形问题中,测试用例(5,5,5)、(6,6,6)、(100,100,100)都可以测试等边三角形,但可以认为在程序中这三个测试用例具有“相同的处理”,因此这些用例是冗余的。23弱一般等价类测试考虑单缺陷假设不考虑
8、无效数据,测试用例使用每个等价类中的一个值设两变量x1和x2函数有以下边界和等价区间:a=x1=d,区间为:a,b),b,c),c,de=x2=g,区间为:e,f),f,g)24强一般等价类测试考虑多缺陷假设测试用例集合为等价类笛卡儿积设两变量x1和x2函数有以下边界和等价区间:a=x1=d,区间为:a,b),b,c),c,de=x2=g,区间为:e,f),f,g)25弱健壮等价类测试考虑单缺陷假设、无效值用例标识对于有效输入,使用每个有效类的一个值对于无效输入,使用一个无效值,并保持其余的值都有效的26强健壮等价类测试考虑多缺陷假设、无效值用例标识从所有等价类(包括若干无效等价类)笛卡儿乘积
9、中选取27案例分析-三角形问题的等价类测试用例使用输出确定等价类R1=等边三角形R2=等腰三角形R3=不等边三角形R4=不构成三角形弱一般等价类测试用例(强一般等价类)测试用例abc预期输出WN1555等边三角形WN2223等腰三角形WN3345不等边三角形WN4412不构成三角形28弱健壮等价类测试用例(考虑a,b,c的无效值)测试用例abc预期输出WR1-155a值不在范围内WR25-15b值不在范围内WR355-1c值不在范围内WR420155a值不在范围内WR552015b值不在范围内WR655201c值不在范围内29强健壮等价类测试用例(以下为额外测试用例三维立方的一个角)测试用例a
10、bc预期输出SR1-155a值不在范围内SR25-15b值不在范围内SR355-1c值不在范围内SR4-1-15a,b值不在范围内SR55-1-1b,c值不在范围内SR6-15-1a,c值不在范围内SR7-1-1-1a,b,c值不在范围内30案例分析-NextDate函数的等价类测试用例确定等价类(方法一)M1=月份:1=月份=12D1=日期:1=日期=31Y1=年:1912=年=2012M2=月份:月份12D2=日期:日期31Y2=年:年201231弱一般等价类测试三个独立变量的有效等价类都只有一个,因此弱一般等价类测试与强一般等价类测试相同测试用例月份日期年预期输出WN1,SN161519
11、121912年6月16日32弱健壮等价类测试测试用例月份日期年预期输出WR161519121912年6月16日WR2-1151912月份不在有效值内WR36151811年份不在有效值内WR46-11912日期不在有效值内WR56321912日期不在有效值内WR613151912月不在有效值内WR76152013年不在有效值内33强健壮等价类测试以下是强健壮等价类测试用例三维立方的一个角测试用例月份日期年预期输出SR1-1151912月份不在有效值内SR26-11912日期不在有效值内SR36151811年不在有效值内SR4-1-11912月份和日期不在有效值内SR56-11811日期和年不在有
12、效值内SR6-1151811月份和年不在有效值内SR7-1-11811月份,日期和年不在有效值内343.4 基于决策表的测试定义也称判定表,是分析和表达多逻辑条件下执行不同操作的情况的工具决策表的用途能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏,设计出完整的测试用例集合。35决策表举例12345678问题你觉得疲倦吗? YYYYNNNN你对内容感兴趣吗? YYNNYYNN书中内容使你胡涂吗? YNYNYNYN建议请回到本章开头重读 继续读下去 跳到下一章去读 停止阅读,请休息 读书指南决策表36决策表的组成条件桩:列出了问题得所有条件。通常认为列出的条件的次序无关紧要。动作桩
13、:列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。条件项:列出针对它左列条件的取值。在所有可能情况下的真假值。动作项:列出在条件项的各种取值情况下应该采取的动作。规则:任何一个条件组合的特定取值及其相应要执行的操作称为规则。 37规则合并(化简)将具有相同动作,并且其条件项之间存在着极为相似关系的两条或多条规则合并为一条规则1234问 题 你觉得疲倦吗? YNNN你对内容感兴趣吗? -YYN书中内容使你胡涂吗? -YN-建 议 请回到本章开头重读 继续读下去 跳到下一章去读 停止阅读,请休息 12345678问题你觉得疲倦吗? YYYYNNNN你对内容感兴趣吗? YYNNYYNN书中
14、内容使你胡涂吗? YNYNYNYN建议请回到本章开头重读 继续读下去 跳到下一章去读 停止阅读,请休息 38决策表的建立步骤 1列出所有的条件桩和动作桩 2 确定规则的个数 3 填入条件项 4 填入动作项 5 合并相似规则 39决策表的类型有限条目决策表所有条件都是二叉条件(真/假)决策表扩展条目决策表条件可以有多个值40案例分析-三角形问题1列出所有的条件桩和行动桩 C1:ab+c?C2:ba+c?C3:Ca+b?C4:a=b?C5:a=c?C6:b=c?条件桩非三角形不等边三角形等腰三角形等边三角形不可能动作桩 2 确定规则的个数 26=64规则数41 3 填入条件项 4 填入动作项 C1
15、:ab+c?FFFFFFFFFFC2:ba+c?FFFFFFFFFFC3:Ca+b?FFFFFFFFTTC4:a=b?FFFFTTTTFFC5:a=c?FFTTFFTTFFC6:b=c?FTFTFTFTFTA1:非三角形A2:不等边三角形A3:等腰三角形A4:等边三角形A5:不可能42 5 合并相似规则 C1:ab+c?FFFFFFFFFFC2:ba+c?FFFFFFFFFFC3:Ca+b?FFFFFFFFTTC4:a=b?FFFFTTTTFFC5:a=c?FFTTFFTTFFC6:b=c?FTFTFTFTFTA1:非三角形A2:不等边三角形A3:等腰三角形A4:等边三角形A5:不可能43C1
16、:ab+c?FTTTTTTTTTTC2:ba+c?-FTTTTTTTTTC3:Ca+b?-FTTTTTTTTC4:a=b?-TTTTFFFFC5:a=c?-TTFFTTFFC6:b=c?-TFTFTFTFA1:非三角形A2:不等边三角形A3:等腰三角形A4:等边三角形A5:不可能44 6 得到测试用例 用例IDabc预期输出DT1412非三角形DT2142非三角形DT3124非三角形DT4555等边三角形DT5?不可能DT6?不可能DT7223等腰三角形DT8?不可能DT9232等腰三角形DT10322等腰三角形DT11345不等边三角形45案例分析-NextDate函数(方法一)NextDa
17、te是一个有三个变量(月份、日期和年)的函数。函数返回输入日期后面的那个日期。变量月份、日期和年都为整数,且满足以下条件:C1.1=月份=12C2.1=日期=31C3.1912=年=2050461=M=12FFFFTTTT1=D=31FFTTFFTT1912=Y=2050FTFTFTFTA1:无效输入A2:?列出所有的条件桩和行动桩 为什么?47等价类M1=月份:每月有30天M2=月份:每月有31天M3=月份:此月是2月D1=日期:1=日期=28D2=日期:日期=29D3=日期:日期=30 D4=日期:日期=31Y1=年:年是闰年Y2=年:年是平年办法会有的条件桩C1:月份在M1中C2:月份在
18、M2中C3:月份在M3中C4:日期在D1中C5:日期在D2中C6:日期在D3中C7:日期在D4中C8:年是闰年C9:年是平年29=512太大!规则数?48等价类M1=月份:每月有30天M2=月份:每月有31天M3=月份:此月是2月D1=日期:1=日期=28D2=日期:日期=29D3=日期:日期=30 D4=日期:日期=31Y1=年:年是闰年Y2=年:年是平年条件桩C1:月份在M1,M2,M3中之一C2:日期在D1,D2,D3,D4中之一C3:年在Y1,Y2中之一新办法49条件12345678910111213.C1:月份在M1M1M1M1M1M1M1M1M2M2M2M2M2.C2:日在D1D1
19、D2D2D3D3D4D4D1D1D2D2D3.C3:年在Y1Y2Y1Y2Y1Y2Y1Y2Y1Y2Y1Y2Y1.有多少条规则 ?条件桩C1:月份在M1,M2,M3中之一C2:日期在D1,D2,D3,D4中之一C3:年在Y1,Y2中之一50案例分析-NextDate函数的测试用例确定行动桩A1:不可能A2:日期增1A3:日期复位(置1)A4:月份增1A5:月份复位(置1)A6:年增151NextDate函数的扩展条目决策表条件1234567891011121314C1:月份在M1M1M1M1M2M2M2M2M3M3M3M3M3M3C2:日在D1D2D3D4D1D2D3D4D1D1D2D2D3D4C
20、3:年在-Y1Y2Y1Y2-A1:不可能A2:日增1?A3:日复位?A4:月增1?A5:月复位?A6:年增1?注意规则8,1052案例分析-NextDate函数(方法二)利用等价类M1=月份:每月有30天M2=月份:每月有31天,12月除外M3=月份:此月是12月M4=月份:此月是2月D1=日期:1=日期=27D2=日期:日期=28D3=日期:日期=29 D4=日期:日期=30D5=日期:日期=31Y1=年:年是闰年Y2=年:年是平年条件C1:月份在M1,M2,M3,M4中之一C2:日期在D1,D2,D3,D4 ,D5中之一C3:年在Y1,Y2中之一问题:可得到 ?条规则53新的NextDat
21、e函数的扩展条目决策表:条件12345678910C1:月份在M1M1M1M1M1M2M2M2M2M2C2:日在D1D2D3D4D5D1D2D3D4D5C3:年在-A1:不可能A2:日增1A3:日复位A4:月增1A5:月复位A6:年增154新的NextDate函数的扩展条目决策表续:(结合不关心条目,可得到有22条规则的决策表) 条件111213141516171819202122C1:月份在M3M3M3M3M3M4M4M4M4M4M4M4C2:日在D1D2D3D4D5D1D2D2D3D3D4D5C3:年在-Y1Y2Y1Y2-A1:不可能A2:日增1A3:日复位A4:月增1A5:月复位A6:年
22、增155同步练习用例ID月份日期年预期输出123456789请写出NextDate函数的前9个测试用例:56案例分析- NextDate函数的测试用例用例ID月份日期年预期输出1-341220012001年4月12日443020012001年5月1日54312001不可能6-911520012001年1月16日1013120012001年2月1日11-14121520012001年12月16日15123120012002年1月1日1621520012001年2月16日1722820042004年2月29日1822820012001年3月1日1922920042005年3月1日202292001不可能21,222302001不可能573.5 错误推测法依靠经验和直觉猜测程序中可能存在的各种错误,从而有针对性地编写检查这些故障的测试用例。58功能性测试方法总结精细程度方法评价工作量59精细程度测试用例数精细程度边界值等价类决策表低高各种测试方法的测试用例趋势线60设计测试用例的工作量精细程度边界值等价类决策表低高各种测试方法的测试用例设计工作量工作量61总结边
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 邢台市中医院配电房值班与倒闸操作实操考核
- 2025年4月公众北海市海城区招聘城镇公益性岗位人员8名模拟试卷附答案详解(考试直接用)
- 秦皇岛市人民医院加速器典型故障识别与初步处理口试题
- 2025年西安经开第五小学教职工招聘考前自测高频考点模拟试题及答案详解一套
- 邢台市中医院听力检查护理配合考核
- 石家庄市中医院术中神经电生理监测技师准入考核
- 上海市人民医院放疗科感染控制与安全防护知识测试题
- 唐山市人民医院影像导航技术应用考核
- 2025中心医院应急预案掌握程度考核
- 2025广东广州市中山大学孙逸仙纪念医院耳鼻喉科科研助理招聘1人考前自测高频考点模拟试题及完整答案详解一套
- 2025年10.13日少先队建队日主题班会课件薪火相传强国有我
- 2025年工会社会工作者招聘笔试模拟试题库及答案
- 家乡的变化课件
- 2024年成人高等考试《政治》(专升本)试题真题及答案
- 暖通施工工程方案(3篇)
- 陕西省专业技术人员继续教育2025公需课《党的二十届三中全会精神解读与高质量发展》20学时题库及答案
- 百词斩雅思核心词汇
- 同济大学信纸
- 第六章植被遥感
- 红楼梦人物艺术鉴赏智慧树知到答案章节测试2023年温州理工学院
- (供应链管理)供应链物流综合实训指导书
评论
0/150
提交评论