软件测试工作中常常会遇到不能复现的bug,遇到这种情况其实很正常,但是很多测试新手都按照自己的想法处理,没有提交bug,或者匆匆关闭bug。线上出现问题,就只能自己背锅了。今天我们就说说,遇到这种情况,我们该如何应对。
首先,出现不能复现的bug,这里一般有两种情况
第一种,在测试阶段,执行了一个用例未覆盖的场景,或者随机测试,盲目点点点,一旦产生了bug,很容易忘记之前操作了什么。对于这样的情况,通常根据bug的现象和当前的操作页面,可以大概推断出进行了哪些操作,尝试几次可能路径后,一般会找到导致缺陷的步骤。
但是还有少量情况,无论怎么操作都无法复现刚才的bug。
第二种,对于已经提交给开发的bug,在开发环境怎么也复现不了,开发要求关闭该bug。这种情况,就要分析提交给开发的bug描述是不是准确详细,有没有必要的前置条件,操作步骤是否详细,是否提供必要的截图信息。排查测试环境和开发环境的配置是否相同,可以要求开发在测试环境中验证通过再关闭该bug。
一些没有经验的测试人员,在遇到第一种情况时,认为这种bug的概率非常小,可以不用提交bug。而且,开发人员有时候也要求必须有重新路径才能提交bug,这样一旦线上出现问题,背锅的自然就是测试了。
作为软件测试人员,正确合理的做法是什么呢?
- 首先,在遇到非必然重现的bug,一定要提bug,并且要在bug单中说明复现的概率。
- 在发现bug时,要分析产生的原因,尽量多尝试可能出现的步骤。排除环境和自己电脑配置的原因,比如浏览器的版本,系统的版本,等。还可以寻找开发帮助,让开发同学对相应地方的代码进行检查,看一下是否可以通过代码层面检查出问题。
- 如果还未复现,在接下来的测试中,时刻保持关注,每次执行同样或者相近的步骤的时候,看下是否能够复现之前的bug。
- 那些一直未能复现的bug,需要测试经理定期将这些bug汇总,选择优先级高的缺陷,组织开发人员和测试人员专门投入到复现问题。如果经过这样的专门复现依然不能复现,可以降低问题的优先级。如果在项目前期,跟踪至少3个版本,如果仍然无复现,可以暂时关闭该bug,备注说明并不是因为修复关闭,而是经过x个版本后不复现了。
- 如果项目周期比较紧张,不能跟踪多个版本,那么bug就不能关闭,上线后及时关注用户的使用反馈,如果持续3或者4个版本没有出现,那么可以将bug暂时关掉了,同时关掉的时候要进行备注说明。