用途:为任何技术问题提供系统化调试流程,核心原则是“先找到根因,再尝试修复”,症状式修复视为失败。适用于测试失败、生产环境缺陷、异常行为、性能问题、构建失败与集成问题;在时间紧迫、看似只需“快速一改”、已多次尝试修复或尚未完全理解问题时尤其适用。
四个阶段(必须依次完成):
- 根因调查:仔细阅读错误信息与堆栈,稳定复现问题,检查近期变更(如 git log --oneline -10、git diff),在多组件系统中于各边界加诊断日志收集证据,并沿调用栈向上追踪数据流,定位坏值来源。
- 模式分析:在同一代码库中寻找可用的相似实现,完整阅读参考实现,逐项列出可用与故障代码的差异,理解依赖、配置与环境假设。
- 假设与验证:提出单一明确假设,做最小改动、一次只改一个变量进行验证;不成立则提出新假设,不在旧修复上叠加。
- 实施:先写能复现缺陷的失败测试,再针对根因做单一修复,运行回归测试与全量测试验证。若修复失败,遵循“三次法则”:少于三次回到阶段一重新分析;三次及以上应停止并质疑架构,与用户讨论后再继续。
常用命令示例:pytest tests/test_module.py::test_name -v、pytest tests/ -v --tb=long、pytest tests/ -q。
限制与说明:资料未提供该技能的安装方式、收费、平台支持或效果数据;文中给出的成功率与耗时对比来自其自述的调试经验,未提供独立验证。使用时应避免“先快速修复再调查”“一次改多处”“跳过测试手动验证”等红旗行为。