返回博客
TIPS
代码调试
DeepCode
技巧

代码调试:先复现,再修改

平台管理员
2026年3月1日
15 次阅读

我踩过的坑

去年有一次用 LAMMPS Assistant 跑分子动力学脚本,控制台报了一个力场参数错误。我没截图,没保存输入文件,直接改了三个地方。报错变了,但原来的错误是什么,我已经不知道。那一下午我改了十七版,最后回滚到第一版才解决。

从那时起,我给自己定了一条铁律:先复现,再修改。

稳定复现是调试的起点,不是中间步骤
稳定复现是调试的起点,不是中间步骤

三条原则

  • 固定输入。把报错时的输入文件、参数、环境版本全部复制到一个单独的文件夹。命名为 bug_repro_20260625 之类,不要覆盖原始文件。
  • 一次只改一处。如果同时改模型和超参数,你就不知道哪个变化起了作用。我在 DeepCode 里会要求它每次只给出一个修改建议,并说明理由。
  • 记录报错原文。不要凭记忆复述错误。把完整报错贴给 AI,包括堆栈信息。DeepCode 对完整报错的理解明显更准确。

复现之后

一旦错误能稳定出现,调试就完成了一半。接下来用 DeepCode 做二分法排查:注释掉一半代码,看错误是否还在。重复这个过程,很快就能定位到最小可复现单元。

修改代码前,先让错误"住下来"。一个飘忽不定的 bug,比报错更难对付。

评论 (0)

登录 后才能发表评论