当多个日志、文档页面、终端和编辑器位置在没有共同假设的情况下堆积时,调试就会变得令人迷失方向。围绕下一个测试来组织工作区,而不是围绕每一个可能的原因。

冻结观察到的症状

写下确切的用户操作、输入、环境、时间戳、预期结果和实际结果。保持实际输出可见,并保留与其对应的日志间隔。如果你无法复现该症状,请在修改代码之前调查观察边界。

构建一个假设工作区

打开可以解释证据的代码路径、相关的日志流以及依赖项或 API 的权威文档。将对照组和实验组并排放置。改变一个有意义的变量,重新运行相同的操作,并记录预期信号是否发生改变。

通过请求 ID、任务 ID 或时间戳来搜索日志,而不是通过最先引起注意的错误行。保持生产终端和本地终端在视觉上明显区分。在文档和仪表板不再对当前假设起作用后将其关闭。

保留返回点

在追查新的线索之前,记录当前的文件、命令、查询和结果。如果假设失败,请恢复诊断更改并更新笔记,而不是留下模糊窗口的痕迹。Wallo 可以将当前的代码、日志、文档和输出窗口分组到一个调试目标下;它无法关联事件、检查日志或验证假设。