遇到不可重现问题怎么办

测试无法重现问题这个是测试过程中比较常见的现象,网上看到的总结的比较好文章,自己补充了4、5两点:

1、回忆操作步骤、尝试重现
  尽量回忆当时的操作步骤,并且最大可能的复原当时的操作环境。
  确认当时的操作步骤是否有误。如果确认无误,可以多次尝试重现;
  即使发现有操作错误的情况,也不要认为没问题了,要思量为什么会操作错误是否用户也会有这种操作?然后和产品讨论自己的想法,很可能这是用户体验上的问题。
  可以把整个操作流程进行分解,逐个步骤进行考虑影响因素,然后进行验证
  视测试时间、严重程度、重要程度而定,要花多久进行重现,既不能一两次就草草了事,也不能无休止的在这一个问题上无限制消耗时间
  如果是崩溃问题,一定要尽可能的抓取log并分析原因,然后提供给开发
2、提交bug与开发沟通
  即使不能重现,也一定要提交bug备忘:
  1)有的测试人员经常会因为不能重现,就不提交或忽略提交了,这是错误的
  2)用户那边可能会出现,至少我们测试出现过,所以出于测试责任考虑,也要提交;
  3)当前不能重现,不代表以后不能重现,既然出现问题了,那肯定是有问题,只不过当前无法解释而已。
  4)要把当时出现问题时的环境、步骤,尽可能的在bug上写全,并且附上自己的分析和看法,哪怕是猜测也行,以便后续尝试重现
  开发对自己的程序了解深刻,看到bug后,有可能很容易就能知道问题所在立马就能修改,或者根据现象给测试人员重现上的提示
  对于这类bug,有些开发可能不太乐意让提交,因为没有重现步骤没法改,所以一定要和开发明确说明,这首先是备忘一下,后续可能会重现或想到修改方法;就算最后一直无法解决,也可以置为不可重现关闭。(在搜狗项目中,开发的bug数是不计入绩效统计的,所以开bug对于开发没有什么阻力)
  切忌测试人员把单次发现的bug直接给开发,而不进行多次验证、尝试重现,因为这是不专业的表现,发现问题、多次多角度尝试重现、帮助分析问题原因都是测试人员应该做的。
  虽然重现bug是测试的职责,但初步定位bug也是测试人员需要提高的能力,因为这样可以和开发一起找原因,提高开发对你能力的认可。但一定要注意,测试人员认为的原因,需要用一种建议的形式和开发沟通,否则会让开发认为你太自负,并且一旦你说的原因是错的,更会被认为是自不量力。
  如果直到最后上线前都没有重现,那么就要把这个问题计入上线风险。
3、后续回归测试时着重关注
  一轮测试时发现的不可重现问题,在后续回归测试或随机测试时,可以把这类问题重新拿出来分析并尝试重现(所以当即提交bug并详细说明步骤与分析内容的重要性就体现出来了,如果没有这些内容,后续想尝试复现难度都很大)。
  重现问题时,不要仅局限在当前的环境下,换换思路、逆向思维、多发散、甚至带点创造性的做法往往会有较大的惊喜。
  一旦再次重现,一定要保留现场,叫开发人员一起查看
  如果发现了必现步骤,那么就要好好进行分析,为什么测试用例没有覆盖或者常规测试没有发现,及时总结。

4、如果无法重现,也没有任何信息,可以让开发增加监控日志,以便下次出现问题时可以捕获到相关信息以便进行分析定位问题。

5、如果问题比较严重但无法重现,可以让开发检视自己的代码,做代码审查,评估代码是否有问题。

时间: 2024-11-11 21:57:15

遇到不可重现问题怎么办的相关文章

KMP字符串匹配 fzu2275重现赛POJ3167

KMP原理  点击 FZU 2275 Game 乍一看是个博弈的题目,实际上是重现里面比较简单的字符匹配. 只要B是0,那么A一定赢.只要A的长度小于B,那么B一定赢. 只有当A中可以搜索到B,也就是B或者B的反转是A的子串,那么A就可以赢. #include <stdio.h> #include <stdlib.h> #include <string.h> #include <iostream> #include <math.h> #inclu

Bug不能重现的原因分析及其对策

摘 要:本文简要分析了无法重现的Bug的可能产生原因,包括环境不一致.缺少最准确的描述和浏览器的不当设置.针对这些原因,本文给出了相应的对策.通过这些措施,可以重现许多以前认为不可重现的Bug.        关键词:重现:Bug:环境 在测试人员提交bug后,最不希望看到的结果是它们被标记为INVALID,尽管你坚信这一定是Bug.开发人员查看了bug的Description后,最不希望的结果是你无法重现它们,尽管他使用了所有可能的方法去重现它.一旦出现这样的情况,测试人员会很伤心,开发人员也

hdu5512 Pagodas(2015ACM/ICPC亚洲区沈阳站-重现赛(感谢东北大学) )

Pagodas Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 14 Accepted Submission(s): 13 Problem Description n pagodas were standing erect in Hong Jue Si between the Niushou Mountain and the Yuntai M

第八届福建省大学生程序设计竞赛-重现赛

第八届福建省大学生程序设计竞赛-重现赛 B   计算几何 题意:问两个三角形是相交.包含还是相离. tags:套板子..求出相交的面积,再判断一下 /* 多边形相交面积模板 */ #define maxn 510 const double eps=1E-8; int sig(double d){ return(d>eps)-(d<-eps); } struct Point{ double x,y; Point(){} Point(double x,double y):x(x),y(y){} b

ORA-08102异常重现及恢复

现象: 在表上面新建主键报ORA-08102的异常: SQL> alter table t add primary key(id); alter table t add primary key(id) * ERROR at line 1: ORA-00604: error occurred at recursive SQL level 1 ORA-08102: index key not found, obj# 52, file 1, block 72661 (2) 重现异常: 1.查看基表CO

如何重现难以重现的bug

生活中有这么一种现象:如果你关注某些东西,它就会经常出现在你眼前,例如一个不出名的歌手的名字,一种动物的卡通形象,某个非常专业的术语,等等等等.这种现象也叫做“孕妇效应”.还有类似的一种效应叫做“视网膜效应”,它讲的是:你有什么东西或者特质你就特别容易在别处发现你有的这类东西和特质.干了多年测试的我就会经常发现日常使用的系统中有很多的bug,而我老婆就发现不了.今天要说的事儿是“重现难以重现的bug”,这件事儿在本周共遇见了4次:第一次是微博上有一篇<程序员,你调试过的最难的 Bug 是?>(

关闭窗体后,进程仍然在运行的问题重现与解决

1 问题陈述 在开发中,遇到这样一个问题: 点击程序主窗体右上角的叉号关闭应用程序后,程序的进程却没有关闭. 通过查阅资料,了解到,产生此类问题的原因主要有以下两点: 1)程序中存在死循环. 2)程序为多线程程序,且在窗体关闭后,仍有线程在工作. 本文将针对此类问题,进行重现并提出解决方案. 2 场景再现 @场景1 新建Windows应用程序CloseWindowExp,程序每隔一秒钟改变一次窗体的背景色. 程序运行后的效果,如下图所示(变化的过程,就请大家在脑子中想象一下吧). 程序的主要代码

重现apache commons fileupload DOS漏洞

新国九公布后,市场对股市的预期有了变化,股市出现了一波反弹.不过,出人意料的是,反弹的主角并非大家一致公认受益于政策的券商股,而是有色金属与煤炭板块.市场人士认为,除了镍,今年初被印尼实施禁止原矿出口政策,尚有涨幅空间之外,其他有色股或将只有一日游行情,必难有持续上涨之可能. 专家们认为最近之所以出现的"煤飞色舞"的行情,原因有二:一方面近几年下来,有色煤炭的股价已经跌得比较低.累计跌幅巨大,遇到利好总会有一些资金愿意尝试做反弹:另一方面中国经济的持续低迷,这种状况历史上一般不会长期存

2016年中国大学生程序设计竞赛(合肥)-重现赛1008 HDU 5968

异或密码 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 19    Accepted Submission(s): 9 Problem Description 晨晨在纸上写了一个长度为N的非负整数序列{ai }.对于这个序列的一个连续子序列{al,al+1,…,ar }晨晨可以求出其中所有数异或的结果 alxoral+1xor...xo

2016年中国大学生程序设计竞赛(合肥)-重现赛1001 HDU 5961

传递 Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 42    Accepted Submission(s): 16 Problem Description 我们称一个有向图G是传递的,当且仅当对任意三个不同的顶点a,,若G中有 一条边从a到b且有一条边从b到c ,则G中同样有一条边从a到c.我们称图G是一个竞赛图,当且仅当它是一个有