如何处理不可复制的错误

jes*_*ess 3 bug-tracking

你有没有发现自己处于这个位置 - 客户报告了一个错误但你无法重现这个错误.即使QA团队也无法重现该错误.我们的桌面应用程序(C#,Windows窗体)面临着这种情况.您建议我们应该如何重现错误,或跟踪产生错误的方案.

Mar*_*ers 5

是的,这是一种常见的情况.

我发现处理这种情况的最佳方法是在日志文件中尽可能多地记录,并让客户将日志文件发送给您进行分析,以及他们在问题发生时所做的事情的描述.客户描述通常非常不完整,并且错过了关于错误发生时他们正在做什么的重要细节.详细的日志可以帮助填补故事中的漏洞.

如果您足够幸运,日志文件包含堆栈跟踪,通常可以推断出错误的可能原因,即使它是您自己无法重现的很少发生的错误.在这种情况下,受影响代码的代码审查可以揭示代码设计中的缺陷,并提出一种不太可能失败的替代方法.