课程目录

本篇听书

2 分钟 · 双主持人讲解

AI课程 / Claude Code / 04 · 测试、调试与重构
Claude Code 高度智能体化的编程助手 · DeepLearning.AI × Anthropic 04 · 测试、调试与重构
📺 配套视频(吴恩达课程 · B 站外链播放)· B 站原片

04 · 测试、调试与重构

03-添加功能 | 下一篇 → 05-并行多功能开发


三件智能体最擅长的事

测试、调试、重构都是「目标明确、可自动验证」的活,特别适合交给智能体——因为它能自己跑、自己看结果、自己改

自动写测试

给 @app/api/chat.py 的 /sessions 接口写 pytest 测试:
- 覆盖正常返回、空列表、未登录三种情况
- 放到 tests/test_sessions.py
- 写完跑一遍确认通过

要点: - 让它写完就跑pytest -q),形成「写测试→跑→修」的闭环。 - 测试是智能体的护栏:有测试,它后续重构才敢放手改。

调试:把报错喂回去,让它自我纠错

智能体调试的本质是一个循环

复现 → 看报错 → 提假设 → 加日志/改 → 再跑 → 收敛

实操:

跑 pytest 时报这个错(贴完整 traceback),
先别改代码,告诉我你怀疑哪几个原因、怎么验证。
  • 先让它定位(假设 + 验证)再改,避免乱试。
  • 复杂 bug 让它加日志/打印再跑,用数据说话。
  • 修完重跑测试确认真修好了,而不是「看起来对」。

重构

重构 @app/services/retriever.py:
- 把 200 行的 search() 拆成职责单一的小函数
- 不改变对外行为,现有测试必须全过
- 改完跑 pytest 给我看结果

要点: - 重构的安全网是测试——先确保有测试,再让它改。 - 强调「对外行为不变」,让它围着测试转。 - 大重构先 Plan,列出拆分方案再动手。

让验证自动化的心法

智能体编程能放手的前提是:它能自己判断对不对。 所以尽量给它可执行的验收标准:测试命令、构建命令、lint 命令。

本节实操

  • 给上一节加的功能补一组测试,让 Claude 写完即跑
  • 故意制造一个 bug,把报错贴回去看它怎么定位
  • 让它重构一段长函数,约束「测试必须全过」

下一篇 → 05-并行多功能开发

AI Know · 跨越信息鸿沟,带大家用 AI 掌握未来科技