软件缺陷管理与测试报告
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(1)没有足够的时间 (2)不算真正的软件缺陷 (3)修复的风险太大 (4)不值得修复
虽然软件测试人员需要对自己找出 的软件缺陷保持一种平常心态,但同时 又必须坚持有始有终的原则,跟踪每一 个软件缺陷的处理结果,确保软件缺陷 得以关闭。而缺陷是否需要修复的最终 决定权在软件的项目负责人,但使得缺 陷得以关闭的责任在测试人员。
第 5 章 软件缺陷管理与测试报告
5.1 软件缺陷的概念和种类 5.2 正确面对软件缺陷 5.3 软件缺陷的生命周期 5.4 软件缺陷的严重性和优先级 5.5 报 告 软 件 缺 陷 5.6 分离和再现软件缺陷 5.7 测 试 总 结 报 告 5.8 测 试 的 评 测
软件测试是在软件开发的过程中,对 软件产品进行质量控制,目的是保证软件 产品的最终质量。一般来说软件测试应严 格按照软件测试流程,制定测试计划、测 试方案、测试规范,实施测试,对测试数 据进行记录,并根据测试情况撰写测试报 告。测试报告主要是报告发现的软件缺陷。
测试评价主要包括覆盖评价以及质量和 性能评价。覆盖评价是对测试完全程度的 评测;质量和性能评价是对测试的软件对 象的性能、稳定性以及可靠性的评测。
5.1 软件缺陷的概念和种类
软件缺陷简单说就是存在于软件(文 档、数据、程序)之中的那些不希望,或 不可接受的偏差,而导致软件产生的质量 问题。按照一般的定义,只要符合下面5个 规则中的一个,就叫做软件缺陷。
5.3 软件缺陷的生命周期
软件缺陷从被测试人员发现一直到被 修复,也经历了一个特有的生命周期的阶 段。下面是一个最简单的软件缺陷生命周 期的例子,系统地表示软件缺陷从被发现 起经历的各个阶段:
(1)测试人员找到并登记软件缺陷, 软件缺陷被移交到程序修复人员。
(2)程序修复人员修复软件中的软件 缺陷,然后移交到测试人员。
5.4.1 缺陷严重程度
# 缺陷严重等级描述 1 严重缺陷(Critical)不能执行正常工作 功能或重要功能。或者危及人身安全
2 较大缺陷(Major)严重地影响系统要 求或基本功能的实现,且没有办法更正。 (重新安装或重新启动该软件不属于更正 办法)
3 较小缺陷(Minor)严重地影响系统要求 或基本功能的实现,但存在合理的更正办法。 (重新安装或重新启动该软件不属于更正办 法)
软件未达到软件规格说明书中规定的功能;
软件超出软件规格说明书中指明的范围;
软件未达到软件规格说明书中指出的应达到 的目标;
软件运行出现错误;
软件测试人员认为软件难于理解,不易使用, 运行速度慢,或者最终用户认为软件使用效果 不好。
在软件测试过程中如何判断软件缺陷,软 件缺陷都有哪些种类?
4 轻微缺陷(Cosmetic)使操作者不方便或 遇到麻烦,但它不影响执行工作功能或重要 功能。
5 其他缺陷(Other)
其它错误
也有的公司分别称之为A/B/C/D/E类错误。
(1)功能不正常 (2)软件在使用上不方便 (3)软件的结构未做良好规划 (4)功能不充分 (5)与软件操作者的互动不良 (6)使用性能不佳
(7)未做好错误处理 (8)边界错误 (9)计算错误 (10)使用一段时间所产生的错误 (11)控制流程的错误 (12)在大数据量压力之下所产生的错误 (13)在不同硬件环境下产生的错误 (14)版本控制不良所产生的错误 (15)软件文档的错误
Bug跟踪系统工作流程图
Bug提交者
测试人员 技术支持
其他
负责人 客服经理 测试主管
研发人员
提 交 bug 报 告 (Unconfirmed)
修改完毕 (Resloved) 返测完毕 (Verified)
分 配 bug 报 告 (Assigned)
问题未解决 (Reopened)
归档(Closed) 移 除 ( Moved )
(3)测试人员确认软件缺陷被修复, 关闭软件缺陷。
在许多情况下,软件缺陷生命周期的复 杂程度仅为软件缺陷被打开、解决和关闭。 然而,在有些情况下,生命周期变得更复杂 一些,如图5-1所示。
发现wenku.baidu.com件缺陷 测试员找到并登记软件缺陷
打开
软件缺陷被移交到程序员
程序员认为软件缺陷微不足道
打开
软件缺陷移交到项目管理员
项目管理员认为软件缺陷不重要
以不修复 形式解决
软件缺陷移交到测试员
测试员不同意,找出 通用失败案例
打开
软件缺陷移交到项目管理员
打开
以修复 形式解决
关闭
项目管理员现在同意 软件缺陷需要修复
软件缺陷移交到程序员
程序员修复软件缺陷 软件缺陷移交到测试员
测试员确认 软件缺陷得以修复 测试员关闭软件缺陷
图5-1 复杂的软件缺陷生命周期
缺陷状态的描述(Status)
1.已提交(Submitted)已提交的缺陷 2.打开(Open)确认“提交的缺陷”,等待处理 3.已拒绝(Rejected)拒绝“提交的缺陷”,不需要 修复或不是缺陷 4.已解决(Resolved)缺陷被修复 5.已关闭(Closed)确认被修复的缺陷,将其关闭 6.重新提交(ReSubmitted) 已被拒绝的缺陷重新提 交
5.2 正确面对软件缺陷
在软件测试过程中,软件测试人员必须确 保测试过程发现的软件缺陷得以关闭。
测试是为了证明程序有错,而不是 证明程序没错。不管测试计划多么完善 和执行测试多么努力,也不能保证所有 软件缺陷发现了就能修复。有些软件缺 陷可能会完全被忽略,还有一些可能推 迟到软件后续版本中修复。有些软件缺 陷不被修复的原因如下。
修改完毕(Fixed)
不是问题(Navlid)
不修改(Wontfix)
以后解决(Later)
保留(Remind)
不
重
现
(Workforme)
再分配(Reassign)
重复提交(Duplicat)
开发与测试
数据库 市场
管理
5.4 软件缺陷的严重性和优先级
测试人员要对软件缺陷分类,以简明 扼要的方式指出其影响。经常使用的方法 是给软件缺陷划分严重性和优先级。严重 性表示软件缺陷的恶劣程度,反映其对产 品和用户的影响;优先级表示修复缺陷的 重要程度和应该何时修复。下面给出严重 性和优先级的常用划分方法,将有助于测 试人员更好地理解两者之间的差异。