狩猎错误通常由97%的“了解代码库的特定部分”和3%的“编写几行来解决问题一旦正确理解”。
当错误真的很难理解时,它可能意味着整整一天查看代码,尝试一些实验,设置断点并逐步完成代码以了解这个神秘的错误。这整天的工作将在CVS中被记住,因为代码库中的一个非常小的变化(包括简短的评论)以及“修复的#xxxx问题,[某些组件]正在做[无论如何]错误... “作为提交消息。
因此,在一天结束时,错误不再存在,但有关它的唯一存储信息将是CVS中的差异。在调试器中潜伏的时间能够编写最终的错误修复代码行将永远丢失。
我希望能够记录调试会话的一些关键指标/事件,例如:
将此“调试摘要”链接到提交注释可以在以后处理相关错误时实现更快的上下文切换。
是否有一些工具可以做到这一点? (这个问题是语言/ IDE不可知的......)
答案 0 :(得分:2)
我通常会在调试会话期间保留一份书面日记。这是保持工作效率和保持方向的一种方式。但事实上我很少读到这本杂志。我怀疑你所要求的工具就是这种情况。
相反,我的建议是确保您只修复一次错误。将测试用例添加到自动化测试套件中。清理这个凌乱区域周围的设计,以便下次不当时你不必花太多时间在上面。 (测试套件是保存“我手动输入程序的输入数据”的最佳位置,还有什么是“修改并恢复测试某些行为的代码”而不是非正式的单元测试?)