通常情况下,报告错误的人或重现错误的人会做错事,并且最终不会处于相同的状态,即使他们认为是这样。尝试与报告方一起完成。我有一个用户坚持认为管理员权限没有正确显示。我尝试重现错误但无法重现。当我们一起浏览时,结果发现他在这种情况下是以普通用户身份登录的。
我发现了许多“不可重现”的错误,后来才发现它们在运行 X 版本的 Safari 的 Mac OS (10.4) 上是可重现的。这不仅仅适用于浏览器和渲染,它可以适用于任何东西;当前正在运行的其他应用程序,无论用户是 RDP 还是本地用户、管理员还是用户等……在将其称为不可复制之前,请确保您的环境尽可能接近他们的环境。
一旦您验证了用户所做的一切都是正确的并且仍然遇到错误,并且您正在做他们所做的事情并且您没有遇到错误,那么就该看看您实际上可以做些什么了。屏幕截图和日志至关重要。您想确切地知道它的样子,以及当时正在发生的事情。
日志可能包含一些您可以在系统上重现的信息,并且一旦您可以重现确切的场景,您就可以诱使错误隐藏起来。
屏幕截图也对此有所帮助,因为您可能会发现“X 部分已正确加载,但它不应该加载,因为它依赖于 Y”,这可能会给您一个提示。即使用户可以描述正在做什么,屏幕截图也可以提供更多帮助。
责怪用户是很常见的,并且不相信他们所说的任何东西(因为他们称“用户控件”为“东西”),但即使他们可能不知道他们所看到的东西的名称,他们仍然能够描述他们看到的一些行为。这包括在真正错误发生之前几分钟可能发生的一些小错误,或者某些通常很快的事情可能会变慢。所有这些事情都可以作为线索来帮助您缩小导致他们机器而不是您机器错误的方面的范围。
如果一切都失败了,请尝试查看导致问题的代码部分,并可能重构或使用解决方法。如果您可以创建一个场景,从已经存在的一半信息开始(希望在 UAT 中),请让用户尝试这种方法,并查看错误是否仍然发生。您是否最好创建替代但相似的方法,以不同的角度看待错误,以便您可以更好地检查它。