软件测试与质量保证概述.ppt
《软件测试与质量保证概述.ppt》由会员分享,可在线阅读,更多相关《软件测试与质量保证概述.ppt(59页珍藏版)》请在三一办公上搜索。
1、单元测试,马永征,Outline,软件测试概述单元测试单元测试工具Junit(Eclipse),软件测试概述,内容,软件测试定义、目的和作用衡量标准软件测试要素测试技术测试过程,软件测试,概况定义:为了发现程序的错误而执行程序的过程软件测试是SQA的重要手段,属于软件工程领域目前状况软件测试的实践性大于理论性软件测试理论体系尚不成熟软件测试工具尚不成熟软件测试效果对于个人的依赖性比较大,软件测试,目的为了寻找错误,并尽可能地为修正错误提供更多的信息为了证明软件有错误,而不证明软件没有错误作用发现并管理缺陷度量质量评价工作效率和效果预期项目风险,内容,软件测试定义、目的和作用衡量标准软件测试要素
2、测试技术测试过程,软件测试,衡量标准多能够找到尽可能多的、以至于所有的BUG快能够尽可能早地发现最严重的BUG好找到的BUG是关键的、用户最关心的找到BUG后能够重现找到的BUG,并为修正BUG提供尽可能多的信息省能够用最少的时间、人力和资源发现BUG测试的过程和数据可以重用,内容,软件测试定义、目的和作用衡量标准软件测试要素测试技术测试过程,测试技术,不实际运行程序,而是通过检查和阅读等手段来发现错误并评估代码质量的软件测试技术。也称为静态分析技术。,实际运行程序,并通过观察程序运行的实际结果来发现错误的软件测试技术。,在不知道程序内部结构,只知道程序规格的情况下采用的测试技术或策略。,在知
3、道程序内部结构的情况下采用的测试技术或策略。,开发组内部进行的,采用讲解、讨论和模拟运行的方式进行的查找错误的活动。,开发组内部进行的,采用讲解、提问并使用Checklist方式进行的查找错误的活动。一般有正式的计划、流程和结果报告。,开发组、测试组和相关人员(QA、产品经理等)联合进行的,采用讲解、提问并使用Checklist方式进行的查找错误的活动。一般有正式的计划、流程和结果报告。,针对要求的程序功能,按照规范的流程进行的测试。,针对要求的程序功能以外的其他要求,包括性能、安全、配置、负载等指标,按照规范的流程进行的测试。,针对要求的程序功能、性能、安全、配置、负载等指标,基于破坏目的、
4、按照经验进行的随机测试。,程序修改或者版本更新以后,为了确保以前正确的功能和其他指标仍旧正确,而重新进行的测试。,在测试过程中,选择足够的测试用例,使得每一个可执行语句至少被执行一次。,在测试过程中,选择足够的测试用例,使得程序中的每一个分支判断的每一种可能结果都至少被执行一次。,在测试过程中,选择足够的测试用例,使得程序中的每一条可能执行的路径都至少执行一次。,内容,软件测试定义、目的和作用衡量标准软件测试要素测试技术测试过程,测试过程,规格定义,设计,编码,系统测试,集成测试,单元测试,用户需求,验收测试,回归测试,配置管理,缺陷跟踪,测试过程,单元测试:Unit Testing目标:检验
5、程序最小单元有无错误接口、数据结构、边界、覆盖、逻辑检验单元编码与设计是否吻合时机:编码完成后,首先要实施的测试方法:静态测试白盒测试责任:开发工程师,测试过程,集成测试:Integration Testing目标:检验组成系统的模块接口有无错误代码实现的系统设计与需求定义是否吻合时机:主要的单元测试完成后,经常与单元测试同步进行方法:黑盒测试责任:开发工程师测试工程师,测试过程,系统测试:System Testing目标:检验组成整个系统的代码、以及系统的软硬件配合有无错误代码实现的系统与用户需求是否吻合检验系统的文档等各种是否完整、有效模拟验收测试的要求,检查系统是否符合用户的验收标准时机
6、:多数集成测试完成后方法:黑盒测试责任:测试工程师,测试过程,系统测试:System Testing稳定期测试目标:度量是否可以结束测试时机:传统的系统测试完成后方法:黑盒测试责任:测试工程师,测试过程,验收测试:Acceptance Testing目标:使客户验收签字系统是否符合事先约定的验收标准时机:系统测试完成后,在项目组看来开发和测试工作已经全部完成,可以交付使用方法:黑盒测试责任:产品经理或其他高级经理开发工程师测试工程师用户,测试过程,回归测试:Regression Testing目标:验证程序修改或者版本更新以后,以前正确的功能和其他指标仍旧正确。时机:每次错误修改之后,或者版本
7、更新之后方法:白盒测试/黑盒测试责任:开发工程师测试工程师,测试过程,缺陷跟踪:Defect Tracing目标:确保所有发现的错误被正确记录、分发、评估、关闭、统计时机:从错误发现开始到错误关闭为止,每次错误状态修改之后方法:缺陷跟踪系统责任:开发工程师测试工程师测试经理用户,单元测试,内容,单元测试目标任务单元测试技术静态分析测试设计单元测试流程管理流程测试文档,单元测试,概况定义:检验程序最小单位有无错误。一般在编码之后,由开发人员完成。单元:软件开发中的最小的独立部分C语言中的单元:函数或者是子过程C+语言中的单元:类目前状况:实施效果非常好,但是实施阻力比较大(主要是人员和管理因素)
8、,一般只在关键的程序单元中实施有比较系统的理论和方法,但也依赖于系统的特殊性和开发人员的经验有大量的辅助工具,开发人员也经常自己开发测试代码和测试工具主要使用白盒测试和静态分析,也使用黑盒测试,单元测试,目标1、检查代码实现是否符合设计不能检查设计是否正确2、尽早发现错误Microsoft applications10-20 defects/KLOC during unit testing0.5 defects/KLOC after release性价比最好,内容,单元测试目标任务单元测试技术静态分析测试设计单元测试流程管理流程测试文档,单元测试,任务1、模块接口测试检查进出模块的数据是否正确
9、Checklist:模块的实际输入与定义的输入是否一致个数、类型、顺序模块中对于非内部/局部变量是否合理使用使用其他模块时,是否检查可用性和处理结果使用外部资源时,是否检查可用性并及时释放资源内存、文件、硬盘、端口等其他,单元测试,任务2、模块局部数据结构测试检查局部数据结构能否保持完整性Checklist:变量从来没有被使用可能别的地方使用了错误的变量名变量没有初始化错误的类型转换数组越界非法指针变量或函数名称拼写错误使用了外部变量或函数其他,单元测试,任务3、模块边界条件测试检查临界数据是否正确处理Checklist:普通合法数据是否正确处理普通非法数据是否正确处理边界内最接近边界的(合法
10、)数据是否正确处理边界外最接近边界的(非法)数据是否正确处理其他,单元测试,任务4、模块独立执行通路(路径)测试检查由于计算错误、判定错误、控制流错误导致的程序错误Checklist:死代码错误的计算优先级精度错误比较运算错误赋值错误表达式的不正确符号、=;=、=、!=循环变量的使用错误错误赋值其他,单元测试,任务5、模块内部错误处理测试检查内部错误处理设施是否有效Checklist:是否检查错误出现资源使用前后其他模块使用前后出现错误,是否进行错误处理抛出错误通知用户进行记录错误处理是否有效在系统干预前处理报告和记录的错误真实详细其他,内容,单元测试目标任务单元测试技术静态分析测试设计单元测
11、试流程管理流程测试文档,单元测试技术,静态分析定义:不实际运行程序,而是通过检查和阅读等手段来发现错误并评估代码质量的软件测试技术。也称为静态测试技术。方法:走查:WalkThrough审查:Inspection评审:Review,Michael Fagan IBM(1976),单元测试技术,静态分析-走查定义:开发组内部进行的,采用讲解、讨论和模拟运行的方式进行的查找错误的活动。经验:限时避免跑题参加人员经验丰富的开发人员和本模块相关的开发人员本项目组的新人由本模块的开发者进行讲解、回答问题并记录不要现场修改检查要点逻辑错误代码标准/规范/风格,单元测试技术,静态分析-审查定义:开发组内部进
12、行的,采用讲解、提问并使用Checklist方式进行的查找错误的活动。一般有正式的计划、流程和结果报告。经验:以会议的形式,制定会议目标、流程和规则,结束后要编写报告参加人员经验丰富的开发人员和本模块相关的开发人员本项目组的新人由另外一名开发者进行讲解、其他开发者主要按照Checklist进行提问并填表、本模块开发者回答问题并记录不要现场修改检查要点设计需求代码标准/规范/风格,单元测试技术,静态分析-评审定义:开发组、测试组和相关人员(QA、产品经理等)联合进行的,采用讲解、提问并使用Checklist方式进行的查找错误的活动。一般有正式的计划、流程和结果报告。经验:以会议的形式,制定会议目
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 质量保证 概述
链接地址:https://www.31ppt.com/p-6027989.html