如何阅读错误报告
如何阅读错误报告
原文:https://medium.com/hackernoon/being-good-at-reading-bug-reports-b5b33fef704
写 bug 报告应该很容易,难的部分应该是阅读它们。
今年早些时候,我读了一篇由彼得·斯坦伯格写的关于写好 bug 报告的非常精彩的帖子。这篇文章对我来说是一个真正的个人层面,原因有很多。首先,也是最重要的,这是在讨论一个我最关心的话题。bug 报告似乎是一个如此关心的有趣话题,但我确实如此。我写软件已经有很长时间了,当使用软件的人遇到问题时,这对我真的很重要。帖子还重点提到了向苹果报告 bug。我很幸运地从内部看到了雷达,所以我特别感觉到与这类报道的联系。最后,似乎这还不够,它以一个朋友兼前同事的话开始(嗨,Tanya!).
我想说,我认为彼得的推荐非常好。他对如何提高从报告中获得预期结果的可能性有很好的理解——修复。然而,我不禁感到难过,彼得不得不这样做。我真诚地希望他的职位不是必要的。外界不应该(部分)依赖社会工程来引起对他们问题的关注。因此,我认为这可能是有帮助的,特别是因为我曾经是这些报告的另一方,提供一个免费的拍摄。
我想从一个故事开始——追溯到我在苹果公司的时候。
多年来,我一天中的一个固定部分就是分类和研究 iOS 电池寿命雷达。这些信息来自你能想象到的所有来源——从外部开发人员到苹果内部人员。其中包括苹果商店的员工。有一天,我收到了一个商店天才的 bug 报告的小说。此人试图帮助一位客户,该客户在更新到较新版本的 iOS 后遇到了电池电量不足的问题。首先,他们严格遵循所有程序,包括硬件和软件配置、客户自己对问题的描述以及他们所做的观察。但是,天啊,天啊,他们走得更远了。
他们还拿了一些不同的设备,在上面安装了新旧操作系统,并进行了实验。他们试图测量一段时间内的电池电量变化,同时模拟客户的设置。他们附上了一份他们的结果的电子表格,以及一些对额外仪器的请求,这将有助于他们产生更好的测试结果。测试运行了几天,如果我没记错的话,甚至可能是一周。
我被这个人付出的努力惊呆了,表面上只是为了帮助一个客户。看到这种奉献,我很自豪,也很同情他们。我敢肯定这位客户很沮丧,我只能想象至少有些测试是在私人时间完成的。但是,我也不禁为这个可怜的天才感到难过,在这里拼命工作。
这是很久以前的事了,所以我记不清所有的细节了。但是,我确实记得,如果我几乎立刻将问题缩小到 2-3 个 bug。而且,我只需通过客户帐户+配置就能做到。在我阅读这份报告的整个过程中,我越来越惊讶于其中有这么多不必要的信息。所有的工作、测试和写作。我真正需要知道的是类似“客户同时拥有 Exchange 2007 和 2010 帐户,并且正在运行 iOS 5”这样的内容。
当然,这个天才不可能知道这些。但是,如果他只是提交了包含最少信息的 bug,我就可以帮他节省很多精力,更快地解决客户的问题。
这个账户只是我通过雷达进行的无数互动中的一个。当然,也有一些不太积极的经历影响了我的想法。但是,我认为这个故事讲述了我现在在处理 bug 报告时使用的许多方法。我用过很多不同的系统。我目前根本没有使用追踪系统,我强烈推荐它。这花了我一段时间,但是我现在看 bug 跟踪系统有点像我看 UML 图。 <鸭子>
以下是我现在在处理 bug 报告时做/考虑的事情。其中一些是有争议的。有些互相冲突。这只是我的指导方针,但它们对我非常有用。如果你有适合你的不同方法,我很乐意听听!
我的准则
把每一份报告都当作礼物
在任何情况下,反馈都非常有价值。在这里,这是一个机会,使您的产品更好,并打动客户。告诉我有什么比这更值得你花时间去做的事。
试着回应每一份报告
我碰巧喜欢它,但我知道不是每个人都喜欢与客户互动。如果可以的话,想办法以某种方式回应。我有一个理论,忽视顾客对生意不好。
尽你所能鼓励报道
你的软件漏洞百出。你不需要一个完全简化的、可重复的例子来知道愚蠢的表重新排序错误又发生了。调试是你的工作,不是你的客户。把门槛抬得太高只会阻止你得到报告。
要求澄清,即使你确定你知道发生了什么
你很难在一份报告中得到你需要的所有信息。相反,只是要求更多的信息。不管怎样,你已经掌握了所有领域的知识,所以你最清楚如何缩小范围。最坏的情况,你没有答案。这也是帮助客户认识到它确实是一个特性而不是一个错误的好方法:)
当然,你的客户可能不总是愿意帮忙。考虑花些时间集思广益,找出更好的工具和/或诊断方法。错误报告模板是最小公分母——您可以做得更好。
保存您的回答
随着时间的推移,你会发现你必须一遍又一遍地用相似的方式回应。保存您的回答,以便在需要时参考和重复使用。也是很好的知识库素材。
我从来不擅长这个,我总是后悔。
不要嘲笑低优先级的错误
有时候,我甚至觉得很难认真对待报告。模糊的用例,深奥的配置——这些都是诱惑你点击删除的东西。但是,您必须记住,对于这位客户来说,这个问题非常重要,需要花时间详细记录。给予它应有的尊重,即使那只是一句“恐怕这不在目前的计划中”。
永远不要忽视一份粗鲁的报告
相信我,我知道。这是最难处理的事情。我因为工作中粗鲁的反馈而失眠了很多次。
当有人挑衅时,我的一般方法是变得特别专业和彻底。我发现这很让人放松,同时也有助于确保我花时间真正了解我在做什么。这往往是我最有可能犯错和说错话/说傻话的时候。慢慢来,把事情做好。
重视反馈
处理 bug 报告真的很累人。尤其是当人们粗鲁或刻薄的时候。但是,这也是一个了解你工作的机会。你的软件有各种各样的 bug,无处不在,客户也看到了。只有极小一部分人会不厌其烦地举报。找到一种方法,确保当他们这样做的时候,他们感觉很棒。做点什么,因为你的产品是你的责任,不是别人的。
有人愿意免费工作,让你的东西变得更好。你所要做的就是倾听。
黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿并乐意讨论广告&赞助机会。
要了解更多信息,请阅读我们的“关于”页面 , 喜欢/在脸书给我们发消息,或者简单地,发推文/DM @HackerNoon。