版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试,龚宇辉 电信学院,2,复 习,软件测试是对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。 其根本目的是以尽可能少的时间和人力发现并改正软件中潜在的各种故障及缺陷,提高软件的质量。 软件测试由单元测试、集成测试、确认测试、系统测试和验收测试这几个不同的测试阶段组成。 软件测试贯穿于软件开发的整个生命周期。 测试环境硬件软件网络数据准备测试工具 应用测试工具可以提高软件测试效率,加快软件开发过程。可分为:白盒、黑盒、测试制定、测试执行、测试管理和测试支持工具,3,第二章 黑盒测试,2.1 黑盒测试的基本概念 2.2 等价类划分 2.3 边界值分析法 2.4 因果图
2、法 2.5 决策表法 2.6 黑盒测试方法的比较与选择 2.7 黑盒测试工具介绍,4,黑盒测试的基本概念,黑盒测试是将被测软件看作一个打不开的黑盒,主要根据功能需求设计测试用例,进行测试。 黑盒测试也称功能测试或基于规格说明的测试。 其基本观点是:将被测程序看作一个打不开的黑盒,黑盒里面的内容(实现)是完全不知道的,只知道软件要做什么,只关心软件的输入数据和输出结果。 微软的一道面试题:请说出针对一个一次性纸杯应如何测试,硬度是否达标 分别装入少量、半杯、满杯水,测试装载量是否达标 装入开水、温水、冷水、冰水、咖啡等,看是否会产生异味 形状、大小设计是否适合方便拿起 外观是否赏心悦目,印刷图案
3、沾水后是否掉色、模糊 杯子设计是否上大下小,方便运输又容易拿开 装入液体后多久以后漏水 所用材料是否符合食品卫生标准,是否会与所盛饮料发生反应产生有害物质 对于一次性杯子,能否标示已使用(比如变色,5,黑盒测试的基本概念,黑盒测试是从用户观点出发的测试,其目的是尽可能发现软件的外部行为错误。 在已知软件产品功能的基础上,主要检测以下错误: 检测软件功能能否按照需求规格说明书的规定正常工作,是否有功能遗漏; 检测是否有人机交互错误,是否有数据结构和外部数据库访问错误,是否能恰当地接收数据并保持外部信息(如数据库或文件)等的完整性; 检测行为、性能等特性是否满足要求等; 检测程序初始化和终止方面的
4、错误等,6,黑盒测试的基本概念,黑盒测试的两个显著优点: 黑盒测试与软件具体实现无关,所以如果软件实现发生了变化,测试用例仍然可以使用; 设计黑盒测试用例可以和软件实现同时进行,因此可以压缩项目总的开发时间。 要利用黑盒测试方法查出软件中所有故障,只能采用把所有可能的输入全部都用作测试输入的穷举输入测试法来完成。 穷举输入测试是不现实的。这就需要我们认真研究测试方法,以便能开发出尽可能少的测试用例,发现尽可能多的软件故障。 常用的黑盒测试方法有等价类划分、边界值分析、因果图、决策表测试等,每种方法各有所长,应针对软件开发项目的具体特点,选择合适的测试方法,7,等价类划分,等价类划分法是根据程序
5、规格说明书对输入范围进行划分,把所有可能的输入数据,即程序输入域划分为若干个互不相交的子集,称为等价类,然后从每个等价类中选取少数具有代表性的数据作为测试用例,进行测试。 1.划分等价类 (1)有效等价类检验程序是否实现了规格说明预先规定的功能和性能。 (2)无效等价类检查软件功能和性能的实现是否有不符合规格说明要求的地方,等价类是指输入域的某个互不相交的子集合,所有等价类的并便是整个输入域,8,等价类划分,2.常用的等价类划分原则 (1)按区间划分 (2)按数值划分 (3)按数值集合划分 (4)按限制条件或规则划分 (5)细分等价类 在确立了等价类之后,可按如下形式列出所有划分出的等价类表
6、同样,也可按照输出条件,将输出域划分为若干个等价类,9,等价类划分,3.等价类划分测试用例设计 在设计测试用例时,要同时考虑有效等价类和无效等价类的设计。 软件不能都只接收合理的数据,还要接受无效的或不合理的数据,这样获得的软件才能具有较高的可靠性。 具体步骤: 为每个等价类规定一个唯一的编号。 设计一个新的测试用例,尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到测试用例覆盖了所有的有效等价类。 设计一个新的测试用例,使其覆盖并且只覆盖一个还没有被覆盖的无效等价类。重复这一步,直至测试用例覆盖了所有的无效等价类,10,等价类划分,等价类划分法的测试运用 三角形问题的等价类测试 输入三个
7、整数a、b和c分别作为三角形的3条边,通过程序判断由这3条边构成的三角形类型是:等边三角形、等腰三角形、一般三角形或非三角形(不能构成一个三角形)。 假定3个输入a、b和c在1100之间取值,则要求a、b和c必须满足以下条件: Con11a100 Con21b100 Con31c100 Con4ab+c Con5ba+c Con6ca+b 如果a、b和c满足Con1、Con2和Con3,则输出为4种情况之一: 如果不满足条件Con 4、Con 5和Con 6中任意一个,则程序输出为“非三角形”。 如果三条边相等,则程序输出为“等边三角形”。 如果恰好有两条边相等,则程序输出为“等腰三角形”。
8、如果三条边都不相等,则程序输出为“一般三角形,11,等价类划分,创建等价类表,12,等价类划分,确定等价类输入数据设计测试用例,13,等价类划分,还可以从输出域定义等价类: 三角形问题有4种可能的输出:等边三角形、等腰三角形、一般三角形、非三角形。 创建等价类表如下: 测试用例为,14,等价类划分,保险公司人寿保险保费计算程序的等价类测试 某保险公司人寿保险的保费计算方式为:保费投保额保险费率。其中,保险费率根据年龄、性别、婚姻状况和抚养人数的不同而有所不同,体现在不同年龄、性别、婚姻状况和抚养人数,点数设定不同,10点及10点以上保险费率为0.6%,10点以下保险费率为0.1%;而点数又是由
9、投保人的年龄、性别、婚姻状况和抚养人数来决定,具体规则见下表,15,等价类划分,分析程序规格说明中给出和隐含的对输入数据的要求,可以得出: 年龄:一位或两位非零整数,取值的有效范围为199。 性别:一位英文字符,只能取 M或F 值。 婚姻:字符,只能取已婚或未婚。 抚养人数:空白或字符无或一位非零整数(19) 点数 :一位或两位非零整数,取值范围为819,16,等价类划分,通过对规格说明输入数据的取值分析,可以得出保险公司人寿保险保费计算程序的等价类,17,等价类划分,60 60 10 60 提示“年龄在199之间” 提示“年龄在199之间” 提示“性别输入为M/F” 提示“婚姻为已婚/未婚”
10、 提示“抚养人数为空或无或19之间的整数” 提示“抚养人数为空或无或19之间的整数” 提示“抚养人数为空或无或19之间的整数,18,边界值分析法,边界值分析由于故障往往出现在定义域或值域的边界上,所以为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。 边界值分析法具有很强的发现故障的能力。 边界是一些特殊情况。程序在处理大量中间数值时都是正确,但是在边界处可能出现错误。 一些可能与边界有关的数据类型有:数值,速度,字符,地址,位置,尺寸,数量等。要考虑这些数据类型的下述特征: 第一个/最后一个,最小值最大值,开始完成,超过/在内,空满,最短最长,最慢/最快,最早/最迟,最高最低
11、,相邻最远等,19,边界值分析法,边界值和等价类密切相关,输入等价类和输出等价类的边界是要着重测试的边界情况。 边界值分析是对等价类划分方法的补充。 边界是最容易出错的地方,所以,从等价类中选取测试数据时应该关注边界值。 设计方法: 确定边界情况(输入或输出等价类的边界) 选取正好等于、刚刚大于或刚刚小于边界值作为测试数据,20,边界值分析法,边界值分析测试 在一个有两个变量x1和x2的程序P中,假设输入变量x1和x2在下列范围内取值: ax1b, cx2d 边界值分析设计测试用例时,若通过使所有变量取正常值,则: 输入变量的最小值(min) 稍大于最小值(min+) 域内任意值(nom) 稍
12、小于最大值(max-) 最大值(max,对于一个n变量的程序,边界值分析测试会产生4n+1个测试用例,21,边界值分析法,健壮性边界值测试边界值分析的一种扩展 变量除了取min,min,nom,max,max五个边界值外,还要考虑采用一个略超过最大值(max+)以及一个略小于最小值(min-)的取值,看看超过极限值时系统会出现什么情况,健壮性边界值测试将产生6n+1个测试用例,健壮性测试最有意义的部分 是预期的输出,观察程序对 例外情况如何处理,22,边界值分析法,边界值分析法的测试运用 三角形问题的边界值分析测试用例设计 三角形问题中假定了输入在1100之间取值,则边长下界为1,上界为100
13、。设计的边界值分析测试用例如下,23,边界值分析法,加法器边界值测试用例设计 加法器程序计算两个1100之间整数的和。 综合考虑输入数据的取值范围和类型来进行等价类的划分: 进行边界值测试时,每次使一个变量取边界值,其他变量取正常值,24,边界值分析法,25,边界值分析法,应用边界值分析法进行测试用例设计时,应遵循以下一些原则: 如果输入条件对取值范围进行了限定,则应以边界内部以及刚超出范围边界外的值作为测试用例。 如果对取值的个数进行了界定,则应分别以最大、稍小于最大、稍大于最大、最小、稍小于最小、稍大于最小个数作为测试用例。 对于输出条件,同样可以应用上面提到的两条原则来进行测试用例设计。
14、 如果程序规格说明书中指明输入或者输出域是一个有序的集合,如顺序文件、表格等,则应注意选取有序集合中的第一个和最后一个元素作为测试用例,26,边界值分析法,思考题:教材48页5题。 现在如果只想测试程序向打印机输送打印内容这一功能,请设计出你能想到的各种极端的边界值情况。 可以尝试打印时不加纸,或者使其卡纸。 可以脱机打印,拔掉电源,断开打印机电缆。 可以尝试在墨粉不足的条件下打印,甚至不加墨盒。 为了明确所有的可能,可以查看打印机的操作手册,找出支持的错误处理,设法建立使用的错误情况,27,总 结,黑盒测试把程序看作一个不能打开的黑盒子,只检查程序功能是否按照需求规格说明书的规定正常使用。也叫做功能测试或者基于
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年南京工业职业技术大学单招职业倾向性测试题库附答案详解(达标题)
- 2026年南昌应用技术师范学院单招职业技能测试题库及答案详解(历年真题)
- 2026年内蒙古电子信息职业技术学院单招职业技能考试题库及参考答案详解一套
- 2026年内蒙古兴安盟单招职业倾向性考试题库附答案详解(轻巧夺冠)
- 2026年兰州石化职业技术学院单招职业适应性测试题库附参考答案详解(黄金题型)
- 2026年内蒙古商贸职业学院单招职业技能测试题库含答案详解(培优)
- 2026年内蒙古体育职业学院单招职业技能测试题库带答案详解(巩固)
- 2026年厦门东海职业技术学院单招职业技能测试题库附答案详解(培优a卷)
- 2026年兰州外语职业学院单招职业倾向性考试题库及答案详解(网校专用)
- 2026年南通职业大学单招职业倾向性测试题库带答案详解(考试直接用)
- 五年级下册道德与法治第一单元《我们一家人》大单元整体教学设计
- 2025学年部编人教版七年级语文下册教学目标
- 电动车维修服务部薪酬分配方案
- JYLDX架空暂态录波型远传故障指示器使用说明书
- DB13-T 5821-2023 预拌流态固化土回填技术规程
- 《 大学生军事理论教程》全套教学课件
- DL∕T 1115-2019 火力发电厂机组大修化学检查导则
- 中考数学计算题练习100道(2024年中考真题)
- JT-T-1238-2019半柔性混合料用水泥基灌浆材料
- LYT 2085-2013 森林火灾损失评估技术规范
- 【某公司偿债能力现存问题及优化建议分析案例报告10000字(论文)】
评论
0/150
提交评论