软件测试培训
达内IT学院
400-996-5531
为了能够减少二次Bug率,一般组织都有一套Bug跟踪流程用来确保Bug修改的正确性。
下面是一个典型的Bug跟踪流程。
登记Bug -> 原因分析 -> 修改方案 -> 影响性分析 -> 修改 -> 测试 -> 测试组再测试
这个Bug跟踪流程基本上会有一个较高的Bug率,我的经验显示,这个流程的二次Bug率在20%左右,即每修改10个Bug,其中有2个可能没修改完全或者是引起新的Bug。
于是,一个改进的Bug跟踪流程出现了。
登记Bug -> 原因分析 -> 修改方案 -> 方案确认 -> 影响性分析 -> 修改 -> 修改代码确认 -> 测试 -> 测试组再测试
这个新的流程改进时认为,修改方案没有经过确认是造成二次Bug的重要原因,并且,修改后的代码应该经过代码复查。
但是这个修改后的流程应用后的二次Bug率仍然在20%左右,甚至有抬高的迹象。
于是,一个更新的改进流程出现了。
登记Bug -> 原因分析 -> 修改方案 -> 方案确认 -> 影响性分析 -> 影响性分析确认 -> 修改 -> 修改代码确认 -> 测试用例书写 > 测试 -> 测试组再测试
因为,过程改进人员认为,影响性分析不足是Bug没有发现的原因之一,并且,测试范围没有留下必备的文档以便确认。
但是这个修改后的流程应用以后,二次Bug率仍然没有得到改善。
于是,大家认为,不是流程的问题,是人的问题。
—— *——*——
我们来看看是不是真的是这样的?
从第一个流程开始,之所以二次Bug率很高的原因的确是开发组的测试不充分。
而测试不充分的原因,有时间压力的成分,但是另外一个重要的原因是影响性分析不足之外。而影响性分析不足的原因是——这不是人力办得到的。几乎高手也不可能分析的很全面。这才是改进了三个流程都没有达到效果的主要原因。
第二个原因是测试只是执行了部分用例。这也是为什么即使测试组全面测试通过以后交给客户还会被发现Bug的重要原因。
既然明白这两个重要原因,那么流程的改进方式就不能是延长流程。延长流程不仅没有改进效果,并且还造成工时浪费,交货期延长等问题。
所以,最终制定的有效改进方案是,采用自动测试,每个Bug修改的时候都要进行全部测试用例回归。
这样之后,二次Bug率(指交给测试组验证)降到几乎为0(因为有些测试只能采用人工确认)。
自动测试的执行时间随着项目的规模不同而不同,但是整体上来讲,Bug确认的工时降低了大约80%。
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved