缺陷管理是软件开发及测试过程中对缺陷进行提交、沟通、修正、关闭、统计等一系列过程的总和,确保缺陷被跟踪管理,直到执行了缺陷管理的全生命周期。
在整个缺陷管理周期,主要包括以下几部分:
01
缺陷发现:通过执行测试用例,发现软件缺陷的一种行为,是软件测试中非常重要的一个环节;只有发现了软件中的缺陷,才能涉及到之后的缺陷管理。
02
缺陷提交:缺陷的提交是整个缺陷管理中的重点,现市面上也有很多的缺陷管理工具,可以对缺陷进行提交、跟踪及管理。
在缺陷提交时,常见的缺陷描述如下:
缺陷摘要(主题):是缺陷提交中最重要的部分;好的摘要应该包括简要描述(测试环境、软件模块、执行动作、缺陷现象等)、简单指出程序错误的依赖关系、简要指出程序错误的严重程度;要言简意赅、描述程序员最关注的对象,要求程序员通过查看缺陷摘要即可以知晓缺陷的大部分信息;
检测时间:发现时间需要标注,以便跟踪;
检测人:缺陷的发现人必须注明;
检测项目:描述对应的项目编号;
检测版本:什么软件版本出现的缺陷;
缺陷描述:软硬件环境;测试软件模块;执行用例;操作动作描述;有必要的话把关键信息、日志信息、系统信息拷贝下来,以便开发人员查看;
缺陷类型:功能缺陷、可靠性缺陷、可维护性缺陷、易用性缺陷、可移植性缺陷、效率。
缺陷状态:new、open、close、reopen、hold、cancel。
优先级:低、中、高、非常高、紧急;
严重程度:建议、轻微、一般、严重、致命;可以对缺陷的严重程度进行描述;
缺陷发现阶段:单元测试、集成测试、系统测试、用户测试、上线运维?
缺陷所在领域:硬件接口?硬件逻辑?软件驱动?软件接口?系统总体?
缺陷分配人:一般是项目经理或程序员,最好是先分配给项目经理,再由项目经理决定分配给某开发人员;
缺陷关注人:一般是项目经理或程序员,最好是先分配给项目经理,再由项目经理决定相关关注人;
计划关闭版本:由测试人员关闭,不能由项目经理及程序员决定。
03
缺陷修正:缺陷由项目经理指定到相关开发人员后,开发人员会对缺陷进行查看,有必要的话需要对当时的操作及缺陷现象进行复现,以便开发人员定位分析,有几点需要注意。
如果有需要的话,及时与开发人员沟通缺陷的现象及操作过程,缩短缺陷修正的时间;
协助开发人员进行缺陷复现,搭建测试环境等;与开发人员一起查看问题,并根据自己的经验合理推断可能的故障原因。
04
缺陷回测:缺陷反测是指缺陷修正后,测试人员对之前的缺陷进行二次测试,以验证缺陷是否修正,并把结果反馈到缺陷报告中。有几点需要注意:
尽快检验程序错误是否修正,缺陷被修正后,要尽快回测,以便及时与缺陷修复人员沟通;
回测时除了要按照缺陷出现的情景再次测试外,还需要通过变换配置环境或执行的操作顺序,执行多次的后续测试,保证问题被完全修复;回测后问题依旧,多次修正及反测后,仍有问题,有必要直接反馈给项目经理,怀疑相关模块的设计部分存在致命问题或缺陷修正人员自身的问题;回测时,会遇到三种情况,程序错误更正回归(当前缺陷未修复)、老程序错误回归(老的缺陷由修复状态变为未修复)、副作用回归(未曾有缺陷的程序出问题了),一定要描述清楚,反馈给相关开发人员及项目经理。
05
缺陷关闭:缺陷关闭是指缺陷完成了提交和修正,并通过了多次的回归测试,问题完全修正后,将原有缺陷进行关闭。个人认为,缺陷关闭应该有测试人员决定,而不应该由项目经理和程序员来决定,最差的也应该由测试人员和项目经理协商决定。任何的错误程序最终都应该由测试员进行评审和封存。
缺陷管理的几个部分
发表于:2018-10-06
作者:高雅莉
来源:苏软咨询监理
- 周排行
- 月排行
-   高质量的缺陷分析:让自己少写 bug
-   缺陷是什么?
-   从“扁鹊三兄弟”谈缺陷预防
-   软件缺陷的描述
-   如何编写更佳的bug report
-   面对Bug的正确姿势
-   怎么用Leangoo管理Bug
-   实例!软件缺陷数据度量和分析
-   缺陷是什么?
-   高质量的缺陷分析:让自己少写 bug
-   国内外最好用的6款Bug跟踪管理系统
-   像个专业人士一样去调试Bug
-   多种缺陷管理软件简介
-   程序员如何减少开发中的 Bug?