测试计划与软件缺陷-TP串讲_第1页
测试计划与软件缺陷-TP串讲_第2页
测试计划与软件缺陷-TP串讲_第3页
测试计划与软件缺陷-TP串讲_第4页
测试计划与软件缺陷-TP串讲_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

测试计划与软件缺陷串讲Version1.0什么是软件关于程序和软件的定义软件(software)是计算机系统中与硬件(hardware)相互依存的另一部分,它是包括程序(program)、文档(document)的完整集合2/36软件测试的定义软件测试的概念是为了发现错误而执行程序的过程。应关心程序的效率和鲁棒性等因素。检验软件是否满足规定的需求。弄清预期与实际结果之间的差别。备注:所谓“鲁棒性”,是英文“robust”的译音,指强壮、健壮的意思。软件的“鲁棒性”,是指系统在一定条件下维持某些性能的特性,简单地说,就是适应各种各样的变化的能力。鲁棒性越强,系统精确度就愈高,性能越好。3/36软件测试的定义定义使用人工或自动手段,来运行或测试某个系统的过程。其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。软件测试活动一般包含制订测试计划设计测试实施测试提交缺陷报告测试总结(或者称测试评估)

4/36软件测试的目的确保产品完成了它所承诺或公布的功能,并且用户可以访问到的功能都有明确的书面说明确保产品满足性能和效率的要求包括可用性确保产品是健壮的和适应用户环境的5/36测试和调试的区别测试调试发现软件的错误(测试人员不负责修改错误)确定程序中错误的确切位置,对程序(设计,编码)进行修改,排除错误。贯穿整个软件生命周期主要在开发阶段测试人员和程序员参与程序员参与6/36缺陷的识别什么是缺陷不符合设计要求不满足用户确定需求7/36缺陷的识别判断缺陷的方法通过参考文档(规格需求说明书、概要设计、详细设计等)来确认缺陷通过了解软件产品的行业背景和行业相关软件来发现缺陷通过沟通(与设计开发人员、需求分析人员、项目管理人员等)来确认和识别缺陷8/36再现与优化缺陷再现与优化缺陷的必要性为什么要再现与优化缺陷(方法P13-P14)关于软件中的“随机”出现的缺陷,如何处理9/36怎样有效记录缺陷保证重现缺陷分析故障——使用最少步骤复现故障包含所有重现缺陷的必要步骤方便阅读尽量简单——一个缺陷一个报告注意自己的语气值得注意的经验(P17)10/36缺陷报告的用途缺陷报告的用途是什么?为什么要尽早的报告缺陷?是不是所有的缺陷都会被修复?用途记录缺陷缺陷分类缺陷跟踪11/36缺陷的分类从哪些角度给缺陷分类?按问题引出不同按功能模块按缺陷的严重程度(可由公司自己定义)影响进度的问题死机功能问题界面问题建议按修复缺陷的优先级(可由公司自己定义)应立即修复的问题在产品发布之前必须修复的问题如果时间允许应该修复的问题可以在发布版本中存在的问题12/36缺陷报告的处理流程13/36缺陷报告的处理流程缺陷报告的分类按处理状态分类待确认的新提交的已分配的问题未解决的待返测的待归档的已归档的按处理意见分类已修改的不是问题无法修改以后版本解决保留重复无法重现14/36使用Bugzilla缺陷跟踪系统缺陷报告状态转换(P32)15/36使用Bugzilla缺陷跟踪系统使用介绍平台版本报告优先级Bug状态报告人指定处理人概述邮件抄送列表从属关系附加描述Bug报告检索16/36软件测试流程概述什么是软件生命周期软件开发全部过程、活动和任务的结构框架,是从可行性研究到需求分析,软件设计,编码,测试,软件发布维护的过程17/36软件测试流程概述软件生命周期的瀑布模型18/36软件测试流程概述软件生命周期的螺旋模型19/36软件测试流程概述软件测试的生命周期(P47)20/36软件测试流程软件测试流程图(需求阶段)21/36软件测试流程软件测试流程图(设计编码阶段)22/36软件测试流程软件测试流程图(集成、系统、验收)23/36软件测试流程软件测试过程(P73确认测试阶段)24/36软件测试的分类-按策略黑盒测试与白盒测试静态测试与动态测试手工测试与自动测试冒烟测试回归测试25/36软件测试的分类-常见测试方法功能测试性能测试压力测试负载测试易用性测试安装测试界面测试配置测试文档测试兼容性测试安全性测试恢复测试26/36软件测试的原则软件测试应尽早执行,并贯穿于整个软件生命周期软件测试应追溯需求测试应由第三方来构造穷举测试是不可能的,要遵循Good-enough原则必须确定预期输出(或结果)必须彻底检查每个测试结果充分注意测试中的群集现象其他值得注意的规律和经验(P88)27/36关于评审什么是评审在正式的会议上将软件项目的成果(包括各阶段的文档、产生的代码等)提交给用户、客户或有关部门人员对软件产品进行评审和批准。其目的是找出可能影响软件产品质量、开发过程、维护工作的适用性和环境方面的设计缺陷,并采取补救措施,以及找出在性能、安全性和经济方面的可能的改进。28/36软件测试与软件质量软件测试与软件质量软件系统的开发包括一系列生产活动,其中由人带来的错误因素非常多。错误可能出现在程序的最初……,其实目标可能是错误的或描述不完整,也可能在后期的设计和开发阶段……,因为人们不能完好无缺地工作和交流,软件开发过程中必须伴有质量保证活动。软件测试是软件质量保证的重要手段,是规约、设计和编码的最终检查29/36正确认识软件测试软件测试不是软件开发过程中的一个阶段30/36测试流程回顾软件测试的生命周期(图例)31/36软件测试计划的基本结构测试计划的简介测试项目说明需要测试的项目清单测试手段和策略项目通过或失败的标准暂停和重新启动测试的标准测试的可交付性测试任务环境的需求职责人员和培训需求进度表风险及偶然事故的预测32/36软件的分类按软件的技术特点划分业务(Business)软件管理信息系统(MIS)企业资源规划系统(ERP)决策支持系统(DSS)商业智能系统(BI)科技计算软件(图形计算)

嵌入式(Embedded)软件首先在宿主机(HOST)上用某种语言开发,经交叉编译后成为单片机的机器码程序,“烧入”单片机,称为嵌入式。实时(Real-time)软件(火灾自动报警系统)个人计算机软件人工智能软件33/36关于单元测试单元测试多采用白盒测试技术首先要静态审查代码对于动态单元测试的测试驱动采用对话框方式获取、输出数据采用文件(数据库)获取、输出数据34/36桩模块和驱动模块35/36关于集成测试非增式集成方法增式集成方法自顶向下测试自底向上测试36/36软件质量评估评估的方法覆盖评测基于需求的测试覆盖 测试覆盖(已执行的)=Tx/RfT

成功的测试覆盖(已执行的)=Ts/RfT

基于代码的测试覆盖 测试覆盖=Tc/Tiic

37/36软件质量评估评估的方法质量评测缺陷报告缺陷分布(密度)报告缺陷状态与优先级缺陷状态与严重性缺陷龄期报告缺陷趋势报告38/36软件质量评估评估的方法质量评测性能评测动态监测响应时间/吞吐量百分位报告比较报告追踪报告动态监测例子响应时间/吞吐量的例子39/36课堂提问画出软件生产过程图(瀑布模型)画出软件测试V

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论