第 05 节:跑测试和验证
本节 objectives:
- 能要求 Codex 找到并运行合适的验证命令。
- 能看懂测试失败时该修代码、修测试还是调整任务。
- 能让 Codex 在最终报告里列出验证证据。
"已完成"必须有证据
Codex 能运行命令,但它不一定天然知道你的项目最短验证路径。你要训练自己在任务里写明:"先找现有测试命令;改完跑相关测试;如果跑不了,解释阻塞和替代检查。"Codex CLI 的交互模式会展示命令和输出,这让你能把验证放进同一个协作回路。1
测试不是唯一验证。UI 改动可能需要截图,文档改动可能需要链接检查,课程生成样例需要 course-guard.mjs。关键是:每个完成声明后面都要有可复查的证据。
讲解
验证分三类:
失败也分三类:
- 改动引入真实 bug:修代码。
- 测试表达旧行为:确认新行为后改测试。
- 环境阻塞:记录缺依赖、权限或网络,给替代验证。
课程生成 skill 的 guard 是典型机械验证:它检查引用、死链、模板段、README 覆盖、frontmatter、glossary 和 sources 权威字段。2 这类 guard 过了不等于课程完美,但没过就不能交付。
跟我做一遍(worked example)
任务:新增一门课程样例。
你给 Codex 的验证要求:
Codex 可能遇到失败:
这不是"测试坏了",是课程文件不满足契约。修法是补 sources 块或改引用,不是绕过 guard。
换你补全(faded example)
你让 Codex 改了一个 React 组件。请补全验证要求:
参考答案:
关键判断点是不要把"无法运行"写成"已验证"。
小结 + 通向下一节
验证是 Codex 工作闭环的一半。你要让它找到正确命令、解释失败、重跑确认,并在最终报告里留下证据。
下一节处理更容易踩线的部分:权限、联网和工作树。
Footnotes
-
Codex CLI features — https://developers.openai.com/codex/cli/features ↩
-
course-guard.mjs ↩
练习
Level 1: 在你的项目里让 Codex 找验证命令。
提示 1
先跑小测试,再跑大测试。
提示 2
失败输出要保存给 Codex 看。
提示 3
最终总结里没有验证证据,就让它补。
自评