精选Ch3功能性测试课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《精选Ch3功能性测试课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精选 Ch3 功能 测试 课件
- 资源描述:
-
1、功能性测试内容简介o 边界值测试o 等价类测试o 因果图法o 基于决策表的测试1.边界值分析Boundary Value Analysis1.边界值测试o 边界值分析o 健壮性测试o 最坏情况测试o 特殊值测试o 举例o 随机测试常见的边界值o 对16-bit 的整数而言 32767 和-32768 是边界o 屏幕上光标在最左上、最右下位置o 报表的第一行和最后一行o 数组元素的第一个和最后一个o 循环的第 0 次、第 1 次和倒数第 2 次、最后一次1.1边界值分析o 依据原理:错误更可能出现在输入变量的极值附近o 基本思想:使用在最小值、略高于最小值、正常值、略低于最大值、最大值处输入变量
2、值。o 生成测试用例n使所有变量取正常值,只使一个变量取极值(依据“单缺陷”假设:失效极少是由两个或多个缺陷同时发生引起的)nn个变量函数:1个变量取最小值、略高于最小值、正常值、略低于最大值、最大值,n-1个变量取正常值;对每个变量重复此过程,4n+1个测试用例1.1例如:x1x21.1对边界值分析的说明o 值域取决于变量的性质n 容易确定值域:离散值、有界值n 人工确定值域:三角形问题,最大边长?n 对布尔值无意义(可选决策表)o 边界值分析的局限性n NextDate():2月,闰年1.2健壮性测试o 对边界值分析的扩展x1x21.3最坏情况测试o 当多个变量取极值时会出现什么情况?o
3、生成测试用例:o 对每个变量:首先进行包含最小值、略高于最小值、正常值、略低于最大值、最大值5元素集合测试,然后对这些集合进行笛卡尔积计算,生成测试用例o n变量函数的最坏测试情况测试,会产生5n个测试用例1.3两变量函数的最坏情况测试用例x1x21.3两变量函数的健壮最坏情况测试用例x1x21.4特殊值测试o 测试人员依赖经验、领域知识给出特殊值o 特殊值测试特别依赖测试人员的能力o 例如:o NextDate函数:闰年2月28日,2月29日1.5举例(找零钱最佳组合)o 假设商店商品价格X皆不大于100元(整数),若顾客买一件商品,付款Y在100元内,求找给顾客的最少货币张数?o 货币面值
4、:n50元R50n20元R20n10元R10n5元R5n2元R2n1元R1分析输入o X 100o 0 X =100o X 100o X=Y=100o Y X 分析输出o 0=R50=1o 0=R20=2o 0=R10=1o 0=R5=1o 0=R2=2o 0=R1 100nX 100nY=50 找R50n20=S 50 找R20n10=S 20 找R10n5=S 10 找R5n2=S 5 找R2n1=S 100 错误oX=0 错误o0 X 100 错误o0 X=100,Y 100;0X=100;X100;0Y=100;Y=0o思考3:这个等价类划分是否测试充分?漏掉了什么情况?o思考4:如果
5、按照输出结果划分等价类,效果如何?o思考5:应用输入结果的等价类划分测试与边界值分析相比,哪一个更简便,哪一个有效?如何协调?1.6随机测试o 避免出现测试偏见o 方法:使用随机数生成器选取测试用例值o 例如:o a=x=bo x=int(b-a+1)*Rnd+ao Rnd函数生成0,1内的随机数2.等价类划分Equivalence Partitioning2.1等价类测试o 进行完备测试,又避免冗余o 例如:o a=x=d,区间为a,b),b,c),c,do e=y=g,区间为e,f),f,go 包含:n 弱一般等价类测试n 强一般等价类测试n 弱健壮等价类测试n 强健壮等价类测试2.1.1
6、弱一般等价类测试o 根据单缺陷假设:使用每个等价类(区间)的一个值生成测试用例xyadge对称方式2.1.2强一般等价类测试o 根据多缺陷假设:需要等价笛卡尔积的每个元素生成测试用例xyadge2.1.3弱健壮等价类测试/传统等价类测试o 根据单缺陷假设:考虑无效值o 对于有效输入,使用每个有效类的一个值(就像我们在所谓弱一般等价类测试中所做的一样。)o 对于无效输入,测试用例将拥有一个无效值,并保持其余的值都是有效的。xyadge2.1.4强健壮等价类测试o 所有等价类笛卡儿积的每个元素中获得测试用例。xyadge2.2等价类测试用例生成步骤o 选择确定类的等价关系(划分等价类)。n 有效等
7、价类 o 对于程序的需求说明来说是合理的,有意义的输入数据所构成的集合o 利用它可以检验程序是否实现了预期的功能和性能(确认过程)n 无效等价类 o 对于程序的需求说明来说是不合理的,没有意义的输入数据所构成的集合 o 利用它可以检验程序对于无效数据的处理能力(验证过程)o 选择每个等价类中的一组数据标识测试用例。2.2.1确立等价类的原则(1)严格的,可以按照变量来划分有效和无效等价类。o 先按照x来划分有效等价类和无效等价类,然后再按照y来划分有效等价类和无效等价类o 最后再形成相应的测试用例。l x:有效等价类为:A=x=B;无效等价类为:xA和Bx两个无效等价类l y:有效等价类为:C
8、=y=D;无效等价类为:yC和D=1&=50”n 两个无效等价类为“50”2.2.1确立等价类的原则(3)如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类 如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处理,这时要对每一个规定的输入值确立一个有效等价类,而对于这组值之外的所有值确立一个无效等价类 2.2.1确立等价类的原则(4)如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据),例如:n 测试密码域,要求密码必须是数字或字母 n 有效等价类为“密码是数字和字母的组合”(还可以细分)n 无效等
9、价类为“密码包括中文”、“密码包括其它符号”等如果确知已划分的等价类中的各元素在程序中的处理方式不同(例如字母还要区分大小写等),则应进一步划分成更小的等价类 2.2.2将等价类转化成测试用例等价类表等价类测试用例设计o针对是否对无效数据进行测试,可以将等价类测试分为 标准等价类测试和健壮等价类测试。标准等价类测试不考虑无效数据值,测试用例使用 每个等价类中的一个值。健壮等价类测试主要的出发点是考虑了无效等价类。对有效输入,测试用例从每个有效等价类中取一个值;对无效输入,一个测试用例有一个“无效值”,其他值均取“有效值”。健壮等价类测试存在两个问题:(1)需要花费精力定义无效测试用例的期望输出
10、 (2)对强类型的语言没有必要考虑无效的输入,程序可以自己检测。2.3等价类划分实例o 保险费率计算o 三角形o NextDate2.3.1保险费率计算按照输入域划分等价类的例子。o 某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%o 点数的计算是年龄、性别、婚姻、抚养人数所得的点数的总和o 输入:年龄、性别、婚姻、抚养人数o 输出:保险率输入数据说明 年龄20396点40594点99以下59以上、20以下1以上2点性别男5点女3点婚姻已婚3点未婚5点抚养人数1人扣0.5点最多扣3点(四舍
11、五入)第一步:输入和输出变量确认按照输入域划分等价类的例子。o 输入:年龄、性别、婚姻、抚养人数o 输出:保险率o 等价类划分原则:按照输入变量来确认等价类(有效等价类和无效等价类)第二步:等价类划分输入年龄有效等价类2039(6点)(1)4059(4点)(2)6099、119(2点)(3)无效等价类空白(未知)(4)99(未知)(6)包含非数字字符(未知)(7)性别有效等价类男(5点)(8)女(3点)(9)婚姻有效等价类已婚(3点)(10)未婚(5点)(11)是否可以有更多无效等价类?第二步:等价类划分输入抚养人数有效等价类12(1点)(12)34(2点)(13)4(3点)(14)无效等价类
12、空白(未知)(15)=10点(0.6%)(18)10点(0.1%)(19)第三步:设计测试用例按照输入域划分等价类的例子。1、设计测试用例,尽可能的覆盖尚未覆盖的有效等价类。(1)(8)(10)(12)(2)(9)(11)(13)(3)(8)(10)(14)2、设计测试用俐,使得每一个新设计的测试用例只包含一个无效等价类,其他的选择有效等价类。(4)(8)(10)(12)(5)(9)(11)(13)(6)(8)(10)(14)(7)(8)(10)(14)(1)(8)(10)(15)(2)(9)(11)(16)(3)(8)(10)(16)说明:在设计无效部分的测试用例的时候,有效等价类部分,可以
13、任意选择。第四步:选取测试用例用例编号输入输出备注年龄性别婚姻抚养人数保险率122男已婚10.6%(1)(8)(10)(12)(18)13点245女未婚40.1%(2)(9)(11)(13)(19)8点365男已婚80.1%(3)(8)(10)(14)(19)7点4空白男未婚1错误(4)5-1男未婚2错误(5)6122男未婚8错误(6)7“tt1”女已婚1错误(7)822女已婚空白错误(15)922女已婚-1错误(16)1022女未婚“ct2”错误(17)思考1、是否可以按照输出域来设计测试用例?2、按照输入域设计的结果和按照输出域设计的结果会有何不同?2.3.2三角形问题的等价类测试用例第一
14、步:划分等价类第一步:划分等价类 R1=:有三条边:有三条边a、b和和c的等边三角形的等边三角形R2=:有三条边:有三条边a、b和和c的等腰三角形的等腰三角形R3=:有三条边:有三条边a、b和和c的不等边三角形的不等边三角形R4=:三条边:三条边a、b和和c不构成三角形不构成三角形 第二步:选取测试用例第二步:选取测试用例 4 4个弱一般等价类测试用例个弱一般等价类测试用例测试用例测试用例a ab bc c预期输出预期输出WN1WN15 55 55 5等边三角形等边三角形WN2WN22 22 23 3等腰三角形等腰三角形WN3WN33 34 45 5三角形三角形WN4WN44 41 12 2非
15、三角形非三角形三角形问题的弱健壮等价类测试用例弱健壮等价类测试(WN+WR)测试用例 abc预期输出WR1-155a取值不在允许的范围内WR25-15b取值不在允许的范围内WR355-1c取值不在允许的范围内WR420155a取值不在允许的范围内WR552015b取值不在允许的范围内WR655201c取值不在允许的范围内三角形问题的强健壮等价类测试用例强健壮等价类测试(WN+WR+SR+)测试用例 abc预期输出SR1-1-15a、b取值不在允许的范围内SR25-1-1b、c取值不在允许的范围内SR3-15-1a、c取值不在允许的范围内SR4-1-1-1a、b、c取值不在允许的范围内三角形问题
16、的另一种等价类划分 D1 D1=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 D6 D6=ac:a ab+c b+c D7 D7=ac:b ba+C a+C D8 D8=ac:c ca+b a+b 2.3.3NextDate函数的等价类测试用例确定等价类:确定等价类:无效等价类:无效等价类:M2=月份:月份月份:月份12D2=日期:日期日期:日期31Y2=年:年年:年2012有效等价类:有效等价类:M1=月份:月份:1月份月份12 D1=日期:日期:1日
17、期日期31Y1=年:年:1812年年2012 NextDate函数的弱一般等价类测试用例用例ID月份日期年预期输出WN1,SN161519126/16/1912NextDate函数的弱健壮等价类测试用例用例ID月份日期年预期输出WR161519126/16/1912WR2-1151912无效输入WR313151912无效输入WR46-11912无效输入WR56321912无效输入WR66151811无效输入WR76152013无效输入NextDate函数的强健壮等价类测试用例用例ID月份日期年预期输出SR1-1151912无效输入SR26-11912无效输入SR36151811无效输入SR4-
18、1-11912无效输入SR56-11811无效输入SR6-1151811无效输入SR7-1-11811无效输入NextDate函数的等价类另一种划分法M1=月份:每月有月份:每月有30天天 M2=月份:每月有月份:每月有31天天 M3=月份:此月是月份:此月是2月月 D1=日期:日期:1日期日期28D2=日期:日期日期:日期=29D3=日期:日期日期:日期=30D4=日期:日期日期:日期=31Y1=年:年年:年=1900Y2=年:年是闰年年:年是闰年Y3=年:年是平年年:年是平年弱一般等价类测试用例用例ID月份日期年预期输出WR161420006/15/2000WR272919967/30/1
展开阅读全文