软件缺陷管理
即管理BUG
1.缺陷管理流程
研发计算机必须分为开发机、测试机、发布机。开发工作在开发机上进行,软件测试工作(系统测试)在测试机上运行,最后产品验收和运行在发布机上运行。
(1)每轮测试开始,开发部门提出本次测试的重点,开发机版本同步到软件测试机上(或通过配置管理工具实现同步)
(2)软件测试工程师进行冒烟软件测试,如果冒烟测试没有通过,则退回给开发部门,等待开发部门重新提交软件测试任务,返回第一步
(3)冒烟测试通过,测试工程师继续执行测试活动,包括传统正规测试和基于经验的测试,如探索式软件测试等。发现BUG,记录在缺陷管理工具中。
(4)开发工程师修改被确认的BUG(状态为Assigned)
(5)当软件测试工程师认为软件测试结束,大部分Bug都发现完毕,开发机版本再一次同步到软件测试机上
(6)软件测试工程师对Bug进行复测,如果问题依然存在,则标记为Reopen,否则标记为Closed(问题复测成功,问题被关闭)。此外还要对以前测试过的功能进行回归测试。
(7)开发工程师对于Reopen(问题复测失败)的缺陷进行修改。
(8)当一轮软件测试达到出口标准,软件测试机上的版本同步到发布机上,软件测试任务完成,否则返回第五步
2.BUG的等级
分为不同等级的目的是为了方便错误的确认、控制以及避免将来不再发生错误·,也为以后对缺陷分布密度进行统提供了依据。
a.崩溃,阻碍的
系统无法正常运行,阻碍开发人员或测试人员工作。若线上出现这种情况,立即要回退到一个系统的稳定状态版本
b.严重的
系统还可以运行,功能基本上能实现,但很不稳定,有可能导致功能失败,输出数据出错,有些模块无法正常执行
c.一般的
系统可以稳定运行,但会影响用户操作,性能不严重
d.次要的改进的
对系统产品的建议或意见,建议性的bug
这个等级分类,只做简单介绍,以公司要求为标准!
3.缺陷书写规则
即如何描述一个BUG
(1)缺陷编号
(2)缺陷简要描述,用一句话
(3)发现者,修改者
(4)发现的所在版本,发现日期,修改日期,缺陷所在模块
(5)测试平台,要很具体,例如:web端还是APP端,web端哪个浏览器,APP端哪个系统,iOS还是Android,又是哪个手机的系统版本,哪个型号,等等
(6)测试步骤及测试数据
(7)测试实际结果
(8)期望得到的结果
(9)附件,如错误截图,log日志
4.BUG的生命周期
即Bug从提出到把Bug关闭
假设一个测试人员提出了一个bug,开发人员修复了,但测试人员在验证回归时这个bug依旧存在,可能是什么原因?
(1)开发人员没有正确修复
(2)测试人员没有拉取最新的代码进行测试
5.测试金字塔理论
越往上进行测试时,定位问题越困难,效率越低
投入相同的人力物力,越往上测试,投入产出比越低