度量测试结果与缺陷管理_第1页
度量测试结果与缺陷管理_第2页
度量测试结果与缺陷管理_第3页
度量测试结果与缺陷管理_第4页
度量测试结果与缺陷管理_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、Version 3.0度量测试结果与缺陷管理度量测试结果与缺陷管理 良好的测试设计由若干个防范组成。良好的测试设计由若干个防范组成。 在单元测试中,测试应设计为检验各个单元在单元测试中,测试应设计为检验各个单元是否实现了该单元的设计说明书中的所有设是否实现了该单元的设计说明书中的所有设计计判定判定 。 单元测试说明书由一系列单元测试用例组成。单元测试说明书由一系列单元测试用例组成。 测试用例设计技术可以大体分成黑盒和白盒测试用例设计技术可以大体分成黑盒和白盒两个主要类别。两个主要类别。 缺陷猜测主要凭借测试设计者的经验。缺陷猜测主要凭借测试设计者的经验。 对测试本身信任程度的量度对测试本身信任

2、程度的量度 明白何时进行测试和使用覆盖率明白何时进行测试和使用覆盖率 进行缺陷管理进行缺陷管理 测试全貌:测试计划、实际测试和写测试测试全貌:测试计划、实际测试和写测试报告报告 度量是软件工程过程的一个关键要素。度量是软件工程过程的一个关键要素。 度量标准用于理解所创建的模型的属性。度量标准用于理解所创建的模型的属性。 对于测试结果的评价,需要监视测试覆盖率。对于测试结果的评价,需要监视测试覆盖率。 要减少要测试的条件的数量,可以将系统分要减少要测试的条件的数量,可以将系统分成多个独立的部分。成多个独立的部分。 这样可以为代码测试的各个部分分别生成不这样可以为代码测试的各个部分分别生成不同的条

3、件组合。同的条件组合。语句覆盖语句覆盖 选择足够的测试用例,使得程序中每一条可选择足够的测试用例,使得程序中每一条可执行语句至少被执行一次。执行语句至少被执行一次。判定覆盖判定覆盖 选择足够的测试用例,使得程序中每一个分选择足够的测试用例,使得程序中每一个分支判断的每一种可能结果支判断的每一种可能结果(主要指主要指switch-case情况情况)都至少被执行一次。判定覆盖也叫分都至少被执行一次。判定覆盖也叫分支覆盖。支覆盖。条件覆盖条件覆盖 选择足够的测试用例,使得程序中每一个分选择足够的测试用例,使得程序中每一个分支判断中的每一个条件的可能结果都至少被支判断中的每一个条件的可能结果都至少被执

4、行一次。执行一次。判定判定/条件覆盖条件覆盖 选择足够的测试用例,使得同时满足判定覆选择足够的测试用例,使得同时满足判定覆盖和条件覆盖。盖和条件覆盖。条件组合覆盖条件组合覆盖 选择足够的测试用例,使得程序中每一个分选择足够的测试用例,使得程序中每一个分支判断中的每一个条件的每一种可能组合结支判断中的每一个条件的每一种可能组合结果都至少被执行一次。果都至少被执行一次。路径覆盖路径覆盖 选择足够的测试用例,使得程序中所有的可选择足够的测试用例,使得程序中所有的可能路径都至少被执行一次。能路径都至少被执行一次。语句覆盖判定覆盖条件覆盖判定/条件覆盖条件组合覆盖路径覆盖 需要完成的各种测试包括需要完成

5、的各种测试包括: 单元测试单元测试 集成测试集成测试 系统测试系统测试 验收测试验收测试 回归测试回归测试 在验收和回归测试后,对于覆盖率测试达在验收和回归测试后,对于覆盖率测试达到一定标准后,我们即发布软件。到一定标准后,我们即发布软件。 缺陷可以定义成:缺陷可以定义成: 没有实现预定的使用需求或合理期望没有实现预定的使用需求或合理期望 与规格说明书或标准存在偏差与规格说明书或标准存在偏差 在与标准的一致性方面导致客户不满的任何问在与标准的一致性方面导致客户不满的任何问题题 客户期望以较少的时间客户期望以较少的时间/成本获得较高的质量。成本获得较高的质量。 规格说明书在项目开发生命周期的后期

6、往往会被修规格说明书在项目开发生命周期的后期往往会被修改。改。 测试所发现的缺陷常常会招致大量的软件开发成本。测试所发现的缺陷常常会招致大量的软件开发成本。 新的开发方法、工具不断地实现。新的开发方法、工具不断地实现。 软件管理不能让测试成为瓶颈并减慢开发速度。软件管理不能让测试成为瓶颈并减慢开发速度。 测试需要快速、灵活和可靠。测试需要快速、灵活和可靠。 我们需要有关测试充分性的证据。我们需要有关测试充分性的证据。 致命性缺陷(致命性缺陷(Critical)数据丢失,数据计算缺陷、系统崩溃和非常死数据丢失,数据计算缺陷、系统崩溃和非常死机机 严重功能性缺陷严重功能性缺陷(Serious)规定

7、的功能没有实现或不完整、设计不合理造规定的功能没有实现或不完整、设计不合理造成性能低下,影响系统的运营成性能低下,影响系统的运营 警告性缺陷警告性缺陷(Moderate)不影响业务运营的功能问题不影响业务运营的功能问题 建议性缺陷建议性缺陷(Suggestion,Cosmetic)软件设计和功能实现等不甚合理之处提出建议软件设计和功能实现等不甚合理之处提出建议 高优先级高优先级 中优先级中优先级 低优先级低优先级1 1 分配给缺陷的分配给缺陷的ID号号2 2 提交缺陷的时间提交缺陷的时间3 3 缺陷提交人缺陷提交人4 4 版本号版本号发生缺陷的子系统或模块发生缺陷的子系统或模块5 5 缺陷发生

8、的条件缺陷发生的条件6 6 对缺陷的详细描述对缺陷的详细描述7 7 所使用的测试用例号所使用的测试用例号8 8 缺陷被发现的数据库缺陷被发现的数据库9 9 使用的机器号使用的机器号10 10 缺陷的重要性缺陷的重要性11 11 缺陷的改正优先级缺陷的改正优先级1212发生缺陷的子系统或模块及相关发生缺陷的子系统或模块及相关的模块的模块13 13 缺陷是否易再现缺陷是否易再现14 14 其他其他1 1 缺陷负责人缺陷负责人6 6 缺陷改正后需要重新做缺陷改正后需要重新做的测试的测试2 2 严重性严重性7 7 改正缺陷所影响的组件改正缺陷所影响的组件3 3 优先级优先级8 8 目前缺陷的状态目前缺

9、陷的状态4 4 估计改正缺陷的日期估计改正缺陷的日期9 9 缺陷类别缺陷类别5 5 估计改正缺陷所要花费的估计改正缺陷所要花费的时间时间10 10 解决办法解决办法 项目管理者项目管理者 测试管理者测试管理者 被分配修改缺陷的人被分配修改缺陷的人 组件代码的编写人组件代码的编写人 测试小组中的其他成员测试小组中的其他成员 这些阶段如下所示:这些阶段如下所示: 缺陷标识、记录和报告缺陷标识、记录和报告 缺陷的消除和跟踪缺陷的消除和跟踪 缺陷测量和根由分析缺陷测量和根由分析 缺陷预防缺陷预防/过程改进过程改进 软件开发生命周期所有阶段的测试软件开发生命周期所有阶段的测试 安装测试工具安装测试工具

10、缺陷管理问题包括:缺陷管理问题包括:缺陷遗漏缺陷遗漏同类缺陷重复同类缺陷重复精力分散精力分散 效率低效率低 数据库更新不完全数据库更新不完全 分类不严谨分类不严谨 - - 每个缺陷都被划分为缺陷的类每个缺陷都被划分为缺陷的类型型 用来攻击项目分类的缺陷数据用来攻击项目分类的缺陷数据 很多不负责任的缺陷很多不负责任的缺陷 重置是一个瓶颈重置是一个瓶颈 相同的缺陷卷土重来相同的缺陷卷土重来 缺陷状态信息应该包含下列信息:缺陷状态信息应该包含下列信息: 缺陷的当前状态和状态历史记录描述缺陷的当前状态和状态历史记录描述 状态历史记录,包括描述日期、操作、执行者、状态历史记录,包括描述日期、操作、执行者

11、、实际工作量、结果状态和指定的下一个步骤的实际工作量、结果状态和指定的下一个步骤的行。行。 下一个步骤估计需要付出的努力下一个步骤估计需要付出的努力 完成的期望日期完成的期望日期 缺陷分析和度量缺陷分析和度量 缺陷生命周期分布有助于深入了解缺陷结束缺陷生命周期分布有助于深入了解缺陷结束所花天数、修复缺陷所需付出的努力和进度分所花天数、修复缺陷所需付出的努力和进度分析析 对预计付出的努力相对于实际付出的努力的分对预计付出的努力相对于实际付出的努力的分析析 进行缺陷报告前执行的过程进行缺陷报告前执行的过程: 获取空白的缺陷表格获取空白的缺陷表格 指定可用的信息指定可用的信息 信息可用时不断更新信息

12、可用时不断更新 对缺陷信息进行分类,包括对缺陷信息进行分类,包括一般信息一般信息缺陷检测信息缺陷检测信息缺陷消除信息缺陷消除信息状态信息状态信息 估计要投入的努力、预计日期、实际估计要投入的努力、预计日期、实际日期以及缺陷在其整个生命周期中的变化。日期以及缺陷在其整个生命周期中的变化。 所需的缺陷信息有:所需的缺陷信息有: 有关缺陷性质、它的修复优先级等的基本信息;有关缺陷性质、它的修复优先级等的基本信息; 描述描述 - - 简要的文字简要的文字 优先级(紧急、普通、不急)优先级(紧急、普通、不急)您的优先级,客您的优先级,客户的优先级户的优先级 严重程度(主要、次要、不严重)严重程度(主要、

13、次要、不严重)您的优先级,您的优先级,客户的优先级客户的优先级 原因关键字(用于进一步分析)原因关键字(用于进一步分析) 症状(数据库损坏、可视数据缺陷、症状(数据库损坏、可视数据缺陷、界面缺陷、等等)界面缺陷、等等) 起源的阶段起源的阶段 找到的阶段找到的阶段 报告的数据报告的数据 期望和实际的结束日期期望和实际的结束日期 描述描述 版本、日志、周期、过程、用例版本、日志、周期、过程、用例 - 发现缺陷的发现缺陷的地方地方 报告者:(姓名、公司)报告者:(姓名、公司) 硬件操作系统硬件操作系统 - 发现缺陷的平台发现缺陷的平台 测试位置测试位置 附件附件/附加信息附加信息 度量是软件工程过程的一个关键要素。度量是软件工程过程的一个关键要素。 可以在源代码中插入语句以收集程序数据,可以在源代码中插入语句以收集程序数据,例如计算每个分支的每一侧被遍历了几次,例如计算每个分支的每一侧被遍历了几次,或者每一段代码是否都被执行过,执行了几或者每一段代

温馨提示

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

评论

0/150

提交评论