软件测试 教学课件 ppt 作者 郑人杰 许静 于波 第1章测试综述

上传人:E**** 文档编号:89493524 上传时间:2019-05-25 格式:PPT 页数:45 大小:944KB
返回 下载 相关 举报
软件测试 教学课件 ppt 作者  郑人杰 许静 于波 第1章测试综述_第1页
第1页 / 共45页
软件测试 教学课件 ppt 作者  郑人杰 许静 于波 第1章测试综述_第2页
第2页 / 共45页
软件测试 教学课件 ppt 作者  郑人杰 许静 于波 第1章测试综述_第3页
第3页 / 共45页
软件测试 教学课件 ppt 作者  郑人杰 许静 于波 第1章测试综述_第4页
第4页 / 共45页
软件测试 教学课件 ppt 作者  郑人杰 许静 于波 第1章测试综述_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《软件测试 教学课件 ppt 作者 郑人杰 许静 于波 第1章测试综述》由会员分享,可在线阅读,更多相关《软件测试 教学课件 ppt 作者 郑人杰 许静 于波 第1章测试综述(45页珍藏版)》请在金锄头文库上搜索。

1、软 件 测 试 Software Testing,许 静 2011.2,程序运行不稳定,引言:缺乏软件测试所造成的问题,测试的目标,软件可信性,测试人员的职责,测试设计与管理 测试工具开发 测试执行者,课程主要内容,软件测试技术 软件质量管理与控制,测试技术:如何做测试?,如何选择数据 如何执行操作 如何管理测试,数据,结果,专项测试技术,Web应用测试 用户界面测试 性能测试 自动化测试,课程的目标,完成测试计划 设计测试数据 评估测试结果 开发测试工具,第一章 软件测试综述,本章主要内容,测试的原则 基本定义 测试的发展 测试的生命周期,1.1 测试的原则,原则一:穷尽测试是不可能的 针对

2、输入 :如果有三个数作为输入。 每个数的取值个数:264 总的取值:264 x 264 x 264 =2192 如果每次运算之需要1ms,那么也需要。,针对结构 :在表中查找“名字=Bill”,并打印 表中有Bill 表中没有Bill 表的大小 Bill在表中的位置 表中的其他名字是否有关?,“不充分的测试是愚蠢的,过度的测试也是一种罪孽”,原则二:测试工作具有创造性,但很困难 测试是破坏性工作?重复性的工作? 测试需要有洞察力、广泛的知识、测试经验和正确的方法,原则三:测试旨在防止错误的发生,原则四:测试是有风险的,原则五:测试要有计划性 测试计划 测试设计,原则六:测试要有独立性 测试部门

3、 测试经理 测试工程师,测试的局限,输入/状态空间 执行顺序 例:for (int i=0; in; +i) if ( a.get(i)=b.get(i) xi=xi+100; else xi=xi/2; ,int i=0; in; +i,3. 故障敏感性和巧合正确性 代码对测试包隐藏故障的能力成为故障敏感性。 错误的代码执行时,却产生了正确的结果,得到了巧合性。 例1:x+x 是 X*X 的错误代码 当x=2 时,隐藏了错误,例2:int scale (int j) j=j-1; /should be j=j+1 j=j/30000; return j; 对于j的65536个可能的值中,只有

4、六个可能产生错误:-30001,-30000,-1,0,29999,30000。,例3:测试x,y,z是否相等 if (x+y+z)/3=x) print”x,y,z are equal in value” else print”x,y,z are unequal” Test Case1: x=1,y=2,z=3 Test Case2: x=y=z=2 Test Case3: x=2,y=1,z=3,程序测试可以表明缺陷的存在,但决不能证明没有缺陷。 测试必须用需求作为参考点。如果需求是错误的或不完全的,就会产生假的测试。 基于实现的测试并不能发现遗漏,正如缺少的代码不能被测试一样。 从来都不

5、能确信一个正在测试的系统是正确的,测试设计中的错误,可能产生假的测试结果。 得到一个预测是困难的,有的甚至是不可能的。,4. 绝对局限性,测试能完成什么,首要任务就是发现错误 对于给定的测试包,说明被测试系统是符合规约所描述的需求。,1.2 基本定义,错误(Error):Bug 缺陷(Fault):是错误的表现 失效(failure):当缺陷执行时会发生失效 事故(incident):系统在制定范围内执行所需功能时表现的无能,测试脚本:一个用过程脚本语言编写的程序,该程序用来执行一个测试包 测试包:测试实例的集合 测试装置:由测试驱动器和其他支持测试执行的工具组成的系统。,测试用例(Test

6、Case):由输入数据和预期结果组成 输入数据:数据、文件或操作序列 预期结果:后果和实际输出,好的测试用例的3个特性: 检测软件质量的有效性,是否能发现缺陷,或至少可能发现缺陷; 经济性,可仿效的测试用例可以测试很多内容,测试用例的执行、分析和调试是否经济 测试用例的可修改性,每次软件修改后对测试用例的维护成本,通过维恩图理解测试,规格说明 (预期的),程序 (观察的),程序 (观察的),所描述的行为与所实现的程序行为 测试就是确定既被描述又被实现的程序行为,以及它们之间的差距,已描述、已实现和经过测试的行为,S:规格说明描述的行为 P:程序实现的行为 T:测试用例检测到的行为 没有测试的已

7、描述的行为(2,5) 测试的已描述的行为(1,4) 未描述行为的测试用例(3,7) 没有测试的程序行为(2,6) 经过测试的程序行为(1,3) 未经过实现的行为(4,7),S 5 1 4,P 2 6,3 7 T,1.3 测试的起源与发展,测试的定义 Glenford Myers (1979): “Testing is the process of executing a program or system with the intent of finding errors.” Bill Hetzel (1983): “Testing is any activity aimed at evalu

8、ating an attribute of a program or system. Testing is the measurement of software quality.” Craig & Jaskiel (2002): “Testing is a concurrent lifecycle process of engineering, using and maintaining testware in order to measure and improve the quality of the software being tested.”,测试的发展,经验阶段 理论总结阶段 测

9、试技术与测试工具发展阶段,1.4 测试的生命周期,在软件开发生命周期中,软件是通过迭代来不断加以完善的。 在这种环境中,对于每个作为测试目标的工作版本,测试的生命周期还都必须具有一种迭代方法。,Rational 2001定义,测试的目的在于: Finding and documenting defects in software quality. Proving the validity of the assumptions made in design and requirement specifications through concrete demonstration. Validat

10、ing the software product functions as designed. Validating that the requirements have been implemented appropriately.,测试的生命周期,计划,标志测试条件(确定测试什么)和测试的优先级,设计,设计测试用例(确定怎么测试),开发,测试开发(设计脚本、数据等),执行,执行测试用例,将测试结果与期望结果进行比较,评估,测试活动 1计划阶段,安排进度 分配资源、人员 确定测试的起始点和结束点,测试何时停止,当时间用光时 当继续测试没有产生新的失效时 当继续测试没有发现新缺陷时 当无法考虑新测试用例时 当达到所要求的覆盖时 当所有缺陷都已经清楚时,测试活动 2 设计阶段,设计测试流程 测试过程 测试类型 设计测试用例 数据 文件 操作序列 给出预期结果,测试成本曲线,测试活动 3开发阶段,准备测试脚本 测试数据自动生成 测试流程自动化,测试活动 4执行阶段,执行测试用例 对于手动测试: 按事先准备好的手工过程进行测试,测试者输入数据、观察输出、记录发现的问题。 对于自动测试: 启动测试工具,执行测试用例;,测试活动 5评估阶段,测试结果的评估 错误数据统计 信息比较:将测试结果与期望输出进行比较,Bug Report Summary,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

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