缺陷生命周期是每个发现缺陷所经历的过程,从发现到关闭。在IT领域,缺陷生命周期的形式化旨在加快缺陷处理、最小化风险和提高工作透明度。
问题历史:
早期的缺陷跟踪系统只能记录错误。随着软件的复杂性增加,出现了对缺陷状态的结构化跟踪和处理每个阶段描述的需求。
问题:
没有正式阶段,缺陷可能会丢失、停滞,甚至在修复后仍未关闭。同时,由于缺乏透明度,QA和开发人员之间可能会产生误解,不清楚谁应该做什么。
解决方案:
标准化阶段(例如:New, Open, Assign, In Progress, Fixed, Retest, Closed, Reopened)以及在每个阶段描述的操作有助于理顺缺陷处理流程并使其透明。
关键特性:
如果缺陷在测试人员那里重现,但在开发人员那里不重现,是否可以关闭缺陷?
不可以,缺陷必须经双方一致同意,并按照缺陷报告中撰写的步骤进行重现。
如果缺陷收到“不会修复”的回复,该怎么办?
QA应澄清拒绝的原因。如果原因合理(低优先级、与要求一致),可以在评论中关闭缺陷。
如果在关闭后问题再次出现,QA是否必须重新创建缺陷?
不需要,应将缺陷转为“重新开放”状态并添加新的重现细节。
公司仅使用缺陷日志的基本功能。修复缺陷后,开发人员将其标记为已解决,测试人员不进行重测,缺陷被返回到发布中。
优点:
缺点:
团队实施了标准的缺陷生命周期,必须进行重测并在发布前描述关闭原因。
优点:
缺点: