软件功能性测试

上传人:s9****2 文档编号:571028432 上传时间:2024-08-08 格式:PPT 页数:70 大小:1.84MB
返回 下载 相关 举报
软件功能性测试_第1页
第1页 / 共70页
软件功能性测试_第2页
第2页 / 共70页
软件功能性测试_第3页
第3页 / 共70页
软件功能性测试_第4页
第4页 / 共70页
软件功能性测试_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《软件功能性测试》由会员分享,可在线阅读,更多相关《软件功能性测试(70页珍藏版)》请在金锄头文库上搜索。

1、北京软件产品质量检测检验中心北京软件产品质量检测检验中心软件测试工程师培训软件功能性测试1概览在本章中,我们将学习:功能性测试概述功能分解等价类划分边界值分析 因果图法其他测试法2目标完成此课程之后,学员将具备以下能力: 理解功能性测试的含义使用等价类划分的方法设计测试用例使用边界值分析的方法设计测试用例 使用因果图的方法设计测试用例对具体项目进行功能测试 3课程目录功能性测试概述功能性测试概述功能分解等价类划分 边界值分析 因果图法 其他测试方法4功能性测试概述任何程序都可以看作是将从输入定义域取值映射到输出值域的函数将系统看成黒盒,又称为黒盒测试黒盒的实现是不需要了解的,只需要知道输入和预

2、期输出5功能性测试模型输入输出黒盒内部实现不可见6功能性测试的优点功能性测试与软件如何实现无关,如果实现发生变化,功能性测试用例仍然可用测试用例开发可以与软件开发同时进行,可节省软件开发时间,通过软件的用例(use case)就可以设计出大部分功能性测试用例7功能性测试的缺点测试用例数量较大测试用例可能产生很多冗余功能性测试的覆盖范围不可能达到100%8功能性测试的方法功能分解等价类划分边界值分析因果图法其他测试方法9课程目录功能性测试概述功能分解功能分解等价类划分 边界值分析 因果图法 其他测试方法10功能分解含义把软件分解为相对独立的功能单元目的通过功能分解可以明确软件功能性测试的内容使软

3、件功能性测试可度量,有利于测试监督和管理11功能分解功能分解应把握好度不能分解得过粗不能分解得过细可提高软件功能性测试度量的准确性12课程目录功能性测试概述功能分解等价类划分等价类划分 边界值分析 因果图法 其他测试方法13等价类划分等价类划分是将程序的输入域或输出域的不同区间划分为不同的数据类,以便导出测试用例每个等价类所揭示的程序错误都是等价的要求此方法的测试用例能各自发现一类错误,从而减少必须开发的测试用例数 14等价类分类有效等价类 对于程序的需求说明来说是合理的,有意义的输入数据所构成的集合利用它可以检验程序是否实现了预期的功能和性能无效等价类 对于程序的需求说明来说是不合理的,没有

4、意义的输入数据所构成的集合 利用它可以检验程序对于无效数据的处理能力15等价类划分数学含义A=x=B C=y=1&=50” 两个无效等价类为“50” 17确立等价类的原则如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类 如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处理,这时要对每一个规定的输入值确立一个有效等价类,而对于这组值之外的所有值确立一个无效等价类 18确立等价类的原则如果规定了输入数据必须遵守的规则,则可以确立一个有效等价类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据),例如: 测试密码域,要求密码必须是数字或字母 有效等价类为“密

5、码是数字和字母的组合” 无效等价类为“密码包括中文”、“密码包括其它符号”等如果确知已划分的等价类中的各元素在程序中的处理方式不同,则应进一步划分成更小的等价类 19等价类测试用例设计分析输入输出划分有效等价类、无效等价类 设计测试用例,使其尽可能多的覆盖有效等价类 设计测试用例,使其尽可能多的覆盖无效等价类 20举例(保险费率计算)某保险公司承担人寿保险,该公司保费计算方式为:保费=投保额*保险率,保险率依点数不同而有别,10点以上(含10点)费率为0.6%,10点以下费率为0.1%点数的计算是年龄、性别、婚姻、抚养人数所得的点数的总和输入:年龄、性别、婚姻、抚养人数输出:保险率查看程序21

6、输入数据说明 年龄20396点40594点99以下59以上、20以下1以上2点性别男5点女3点婚姻已婚3点未婚5点抚养人数1人扣0.5点最多扣3点(四舍五入)22等价类划分输入年龄有效等价类2039(6点)(1)4059 (4点)(2)6099、119 (2点)(3)无效等价类空白(未知)(4)99 (未知)(6)包含非数字字符(未知)(7)性别有效等价类男(5点)(8)女(3点)(9)婚姻有效等价类已婚(3点)(10)未婚(5点)(11)23等价类划分输入抚养人数有效等价类12 (1点)(12)34 (2点)(13)4 (3点)(14)无效等价类空白(未知)(15)=10点(0.6%)(18

7、)10点(0.1%)(19)24设计测试用例用例编号输入输出备注年龄性别婚姻抚养人数保险率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)25课程目录功能性测试概述功能分解等价类划分 边界值分析边界值分析 因果图法 其他测试方法26边界值分析缺陷往往遗漏

8、在角落里,聚集在边界上 选取输入条件的边界区域作为测试数据比中间的数据更加容易发现错误 边界值分析法是一种补充等价类划分的测试用例设计技术不是对某个等价类随便挑一个数据做测试数据,而是选一个或多个边界数据,使得该等价类的每个边界都被测试到 不仅考虑输入数据,而且考虑输出数据27边界值分析数学含义A=x=B C=y=D28确立边界值的原则如果输入条件或输出条件规定了值的范围并且有效条件包括了值的边界,可分别对边界和略超出边界取值,例如:数据范围是1=x=50正整数边界值取为:1、50、0、51如果输入条件或输出条件规定了值的范围并且有效条件不包括了值的边界,可分别对边界和略处于边界内取值,例如:

9、数据范围是1x 1000 X = 100X 100X= Y = 100Y X 32分析输出0 = R50 = 10 = R20 = 20 = R10 = 10 = R5 = 10 = R2 = 20 = R1 100X 100Y = 50 找R5020 = S 50 找R2010 = S 20 找R105 = S 10 找R52 = S 5 找R21 = S 100X = 00 X 1000 X = 100, Y X36分析后有效情形S = 50S = 49S = 20S = 19S = 10S = 9S = 5S = 4S = 2S = 1S = 0 37设计测试用例38设计测试用例用例编号

10、输入输出备注张数商品价格X付款Y50元R5020元R2010元R105元R52元R21元R1109110000012031195100000100112961000000202139810000001011499100000001115100100000000039简化测试用例删除用例10删除用例1240等价类划分与边界值分析的结合回到等价类划分的例子41课程目录功能性测试概述功能分解等价类划分 边界值分析 因果图法因果图法 其他测试方法42因果图法介绍考虑输入条件之间的相互联系、相互组合 因果图法最终生成的是判定表,它适用于检查程序输入条件的各种组合情况43判定表介绍在一些数据处理问题中,某

11、些操作依赖多个逻辑条件的取值。处理这类问题的一个非常有力的分析和表达工具是判定表一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一个非常有力的工具44判定表介绍判定表由四个部分组成:条件桩(Condition Stub)动作桩(Action Stub)条件项(Condition Entry)动作项(Action Entry)45判定表介绍条件桩条件项动作桩动作项46判定表图示47因果图法步骤 分析软件规格说明描述中的因果关系(输入与输出的因果关系) 找出原因与结果、原因与原因之间的对应关系,画出因果图在因果图上标记约束或限制条件把因果图转化为判定表将判定表中的每一列

12、拿出来设计测试用例 48因果图法的优点 测试用例数目较少 测试用例数目随数据数目的增加而线形的增加49因果图介绍因果图的四种符号:“恒等”50因果图介绍因果图的四种符号:“非”51因果图介绍因果图的四种符号:“或”52因果图介绍因果图的四种符号:“与”53因果图介绍因果图的四种符号说明:c i 表示原因,通常置于图的左部;e i 表示结果,通常在图的右部。c i 和e i 均可取值0或1,0表示某状态不出现,1表示某状态出现。54因果图介绍在实际问题中,输入状态相互之间还可能存在某些依赖关系,称之为“约束”。比如,某些输入条件本身不可能同时出现。输出状态之间也往往存在约束。在因果图中,用特定的

13、符号标明这些约束。55因果图介绍56因果图介绍57因果图介绍说明:对于输入条件的约束有四种以下4类:E约束(异):a和b中至多有一个可能为1,即a和b不能同时为1。I约束(或):a、b和c中至少有一个必须是1,即a、b和c不能同时为0。O约束(唯一): a和b必须有且仅有一个为1。R约束(要求):a是1时,b必须为1,即不可能a是1时b是0。58因果图介绍输出结果只有M约约束束(强制):若结果a是1时,则b的结果强制为0。59因果图法案例 第一列字符必须是A或B,第二列字符必须是一个数字,在此情况下进行文件的修改。但如果第一列字符不正确,则给出信息L;如果第二列字符不是数字,则给出信息M。60

14、因果分析原因:1第一列字符是A2第一列字符是B3第二列字符是一数字11 第一列字符是A或是B结果:21修改文件22给出信息L23给出信息M61因果图62因果图63由因果图建立的判定表64课程目录功能性测试概述功能分解等价类划分 边界值分析 因果图法 其他测试方法其他测试方法65随机测试使用随机数生成器选取测试用例值避免测试偏见(只选取边界值)存在问题:测试用例是否充分66错误推测法 错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例67错误推测法基本思想列举出程序中所有可能有的错误和容易发生错误的特殊情况来设计测试用例例如: 以前测试时曾出现过错误的地方,包括单元测试、集成测试、系统测试、前几次回归测试输入数据的问题,如是否可为空,是否可以有特殊字符,是否可以小于0、等于0等等一些问题的范围或边界68本课总结功能性测试方法主要有三种:等价类划分、边界值分析、因果图法三种方法各有优势,应灵活使用69Thanks!70

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号