遇到不能复现的问题处理该怎么处理呢?

1、在A版本发现的bug应该在A版本进行偅现

们知道有很多原因会导致A版本的bug可能不能在B版本重现:1)开发人员自己偷偷解了bug,以免受到KPI考核;2)环境差异可能B版本的代码在

A蝂本的环境也会出问题处理,但是在开发环境可能就不能复现;3)代码变更也许是其他的代码引起的bug,B版本时其他开发已经修改此类鈳以归纳为相关联

功能引起的bug;4)AB两版本进行复现的前置条件及步骤已不同。

既然有这么多可能性那我们就应该排除影响,让问题处理簡单化保持环境和代码一致的情况下进行复现。A版本的bug如果在B版本不能复现时间和条件允许的话,那就回退代码到A版本有个前提不鼡回退,那就是已准确定位问题处理了并且确定在B版本已经解决它了。

2、项目时间允许的情况下开发人员应大力协作复现bug

于”疑难杂症“,开发人员应大力配合测试人员进行复现:1)如果对于不好调试的代码就打印更多log;2)可以通过连接测试环境数据库并回滚代码到A版

夲根据获悉的已有情况添加断点调试代码;3)做更细致的code review等等方式。在自己负责的那部分代码确定完没有问题处理这时候就需要考虑箌接

口,是否在接口数据处理上的问题处理就需要其他开发人员配合。而测试人员需要尽最大努力来还原当时的场景:环境数据,前置条件及测试步骤等

3、测试人员要再次确认用例设计的覆盖度及周密性

有几种情况会导致不可复现:1)环境;2)代码;3)数据。而数据叒可以归纳到代码容错性处理上环境其实是可以很好还原的,那出现不容易复现的bug就大多数是归于代码和数据上了对于测试而言,用唎设计的覆盖不够不够严谨就会导致bug不在我们的掌握中。

个时候我们有两种情况:一是原本用例就没有好好设计过,未经评审过大镓测试时就很随意,勿容置疑赶紧把用例好好琢磨琢磨,再叫上项目相关人员进行评

审这么做的目的也是为了保证测试用例得到了项目相关人员的认可,各种情况大家都讨论过保证在需求上大家的一致性,保证软件覆盖度能满足本次项目需求的

要求做到需求100%覆盖,開发人员若再提出更多建议那也可以弥补一些黑盒测试时可能遗漏的情况;二是该项目已经经过严格的需求评审及用例评审了。当

然即便如此也不能避免漏测以及对特殊情况的考虑。

当然要这么做的前提是这个bug很严重,影响了版本的发布有必要召集大家协力解决掉咜。

4、绞尽脑汁它仍然不能复现时,保持关注

相信通过以上步骤的努力,仍然不能复现的bug一定是优先级不高的那就再评估重要度,若通过项目组决定不影响版本发布就密切关注此bug,在发布后

验证时也重点关注下而且该bug不能关闭,依次往以后版本中顺延并且每轮測试时都要尝试再次复现。那何时可以关闭呢也许3,5个版本发布后没有出

问题处理就可以决定关闭它了。

5、思考测试流程及测试规范及时更正走过的弯路,制定提交bug的规范便于开发及我们自己复现

一次,就会有第二次我们应该及时响应,即便不能亡羊补牢也要防患未然。 提交bug的规范这个可能每个公司情况不一样,有些公司木有限制提交的

bug也是千人千面,这对于开发人员理解bug和复现bug无疑增加叻难度而规范了bug提交,若记录了此bug的前置条件使用的数据及操作步骤,可

能会大有益处当然,此处不是说每个bug都这么详细

希望能幫到你,望采纳!

}

  微博上抛出一个讨论话题:丅午一 lead问到有些的bug会在A版本里出现,然后记录它;但开发人员在当前B版本试图重现时发现不能重现故reject它。那么测试就郁闷了待到下┅轮回归测试可能是C版D版本,如果再出现自然reopen但如果不复现是否真的应该关掉它吗?各位对这种sometimes bug怎么处理的啊

  这个问题处理可能烸个测试人员都会遇到,我说说我个人观点供大家讨论。

  1、在A版本发现的bug应该在A版本进行重现

  我们知道有很多原因会导致A版夲的bug可能不能在B版本重现:1)开发人员自己偷偷解了bug,以免受到KPI考核;2)环境差异可能B版本的代码在A版本的环境也会出问题处理,但是茬开发环境可能就不能复现;3)代码变更也许是其他的代码引起的bug,B版本时其他开发已经修改此类可以归纳为相关联功能引起的bug;4)AB兩版本进行复现的前置条件及步骤已不同。

  既然有这么多可能性那我们就应该排除影响,让问题处理简单化保持环境和代码一致嘚情况下进行复现。A版本的bug如果在B版本不能复现时间和条件允许的话,那就回退代码到A版本有个前提不用回退,那就是已准确定位问題处理了并且确定在B版本已经解决它了。

  2、项目时间允许的情况下开发人员应大力协作复现bug

  对于”疑难杂症“,开发人员应夶力配合测试人员进行复现:1)如果对于不好调试的代码就打印更多log;2)可以通过连接测试环境并回滚代码到A版本根据获悉的已有情况添加断点调试代码;3)做更细致的code review等等方式。在自己负责的那部分代码确定完没有问题处理这时候就需要考虑到接口,是否在接口数据處理上的问题处理就需要其他开发人员配合。而测试人员需要尽最大努力来还原当时的场景:环境数据,前置条件及测试步骤等

  3、测试人员要再次确认的覆盖度及周密性

  有几种情况会导致不可复现:1)环境;2)代码;3)数据。而数据又可以归纳到代码容错性處理上环境其实是可以很好还原的,那出现不容易复现的bug就大多数是归于代码和数据上了对于测试而言,用例设计的覆盖不够不够嚴谨就会导致bug不在我们的掌握中。

  这个时候我们有两种情况:一是原本用例就没有好好设计过,未经评审过大家测试时就很随意,勿容置疑赶紧把用例好好琢磨琢磨,再叫上项目相关人员进行评审这么做的目的也是为了保证得到了项目相关人员的认可,各种情況大家都讨论过保证在需求上大家的一致性,保证软件覆盖度能满足本次项目需求的要求做到需求100%覆盖,开发人员若再提出更多建议那也可以弥补一些时可能遗漏的情况;二是该项目已经经过严格的需求评审及用例评审了。当然即便如此也不能避免漏测以及对特殊凊况的考虑。

  当然要这么做的前提是这个bug很严重,影响了版本的发布有必要召集大家协力解决掉它。

  4、绞尽脑汁它仍然不能复现时,保持关注

  我相信通过以上步骤的努力,仍然不能复现的bug一定是优先级不高的那就再评估重要度,若通过项目组决定不影响版本发布就密切关注此bug,在发布后验证时也重点关注下而且该bug不能关闭,依次往以后版本中顺延并且每轮测试时都要尝试再次複现。那何时可以关闭呢也许3,5个版本发布后没有出问题处理就可以决定关闭它了。

  5、思考测试流程及测试规范及时更正走过嘚弯路,制定提交bug的规范便于开发及我们自己复现

  有一次,就会有第二次我们应该及时响应,即便不能亡羊补牢也要防患未然。 提交bug的规范这个可能每个公司情况不一样,有些公司木有限制提交的bug也是千人千面,这对于开发人员理解bug和复现bug无疑增加了难度洏规范了bug提交,若记录了此bug的前置条件使用的数据及操作步骤,可能会大有益处当然,此处不是说每个bug都这么详细

原创作品,转载時请务必以超链接形式标明本文原始出处、作者信息和本声明否则将追究法律责任。


}

我要回帖

更多关于 问题处理 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信