软件测试的目的就是尽可能多的找到不符合用户需求的bug,但如果每个迭代都要进行一轮全量测试,那人力成本、时间成本将造成很大程度的浪费,那么如何优化我们的测试流,避免重复的低效率的测试执行呢?
我来介绍下RCA(Root Cause Analysis),即根因分析,就是定期或者不定期对一阶段的bug进行复盘总结,从单个有价值的bug入手,追踪和分析bug产生的本质原因,在此基础上对产品各个角色、以及项目流程做改善和优化。
RCA分析的对象
并不是所有的bug都需要拿来分析,原则是要选择有价值的、具有规律性的bug,这个视具体情况而定,以下仅供参考;
1、刚转测,分析的重点bug为用户体验bug(产品体验、系列问题如版本适配)、有规律性的功能bug(较严重如闪退/不可用、);
2、若在上线前,分析的重点bug为功能bug ;
3、上线后,分析的重点bug为线上bug, 分析直到上线才发现的原因;
RCA 三步走 (2w1h)
1、what? (bug是什么?)
2、why? (bug产生的原因?)
3、how ? ( 如何避免这种bug再次发生?)
PS: 第一轮 内部分析, 第二轮内外分析;
RCA的收获
1、测试人员:总结测试经验,及时补充该类问题的测试设计,避免漏测,更高效的找到同类bug;
2、开发人员:加强自测和code review,提高代码质量,同时避免修改引入;
3、产品人员:需求更合理,设计层面规避bug;
" RCA分析是一种手段,而不是目的。从得到的bug根因,反思和回溯bug产生的各个阶段,思考如何避免类似问题,不再踩坑,在下次测试中得到提升,才是我们想要的结果。同样的,bug分析的成果是一个持续改进优化闭环的过程,它是测试人员潜移默化中测试能力的提升,也是项目流程中各个角色共同保障产品质量意识的推动。因此,请做好bug分析,为产品质量保驾护航 ! "
RCA分析模板化