关于 tdd
tdd 是已弃用的 TDD 技能,明确禁止调用或路由。其内容描述先编写失败测试、再实现和重构的测试优先纪律,但要求改在当前实现工作流中遵循。
主要功能
- 01标记为硬性弃用
- 02禁止调用或路由此技能
- 03说明 Red-Green-Refactor 循环
- 04要求每次变更后运行测试
适用场景
- 01识别并避免调用弃用技能
- 02在当前实现工作流中保持测试优先
- 03按失败测试、实现、重构组织开发
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ yeachan-heo/ oh-my-codex --skill tdd安装后在 Claude Code 中输入/tdd确认已加载。
详细介绍
TDD 已弃用
硬性弃用。请勿调用或路由此技能。在活跃的实现工作流中保持测试优先的纪律,并通过项目测试套件进行验证。
铁律
没有失败的测试,就没有生产代码
先写代码后写测试?删除它。重新开始。没有例外。
红-绿-重构循环
1. 红:编写失败的测试
- 为下一项功能编写测试
- 运行测试 - 必须失败
- 如果它通过了,说明你的测试写错了
2. 绿:最小实现
- 只编写足以通过测试的代码
- 不要多余的东西。不要“顺手改一下”。
- 运行测试 - 必须通过
3. 重构:清理
- 提升代码质量
- 每次更改后都运行测试
- 必须保持绿色
4. 重复
- 下一个失败的测试
- 继续循环
执行规则
| 如果你看到 | 操作 |
|---|---|
| 在测试之前编写的代码 | 停下。删除代码。先写测试。 |
| 测试首次运行就通过 | 测试写错了。修正它,使其先失败。 |
| 一个循环中包含多个功能 | 停下。一个测试,一个功能。 |
| 跳过重构 | 返回。在下一个功能之前先清理。 |
命令
每次实现之前:
# Run the project's test command - should have ONE new failure
实现之后:
# Run the project's test command - new test should pass, all others still pass
输出格式
在指导 TDD 时:
## TDD Cycle: [Feature Name]
### RED Phase
Test: [test code]
Expected failure: [what error you expect]
Actual: [run result showing failure]
### GREEN Phase
Implementation: [minimal code]
Result: [run result showing pass]
### REFACTOR Phase
Changes: [what was cleaned up]
Result: [tests still pass]
外部模型咨询(首选)
tdd-guide Agent 应当咨询 Codex 以验证测试策略。
协议
- 首先形成你自己的测试策略 - 独立设计测试
- 咨询以进行验证 - 交叉检查测试覆盖策略
- 批判性评估 - 绝不盲目采纳外部建议
- 优雅降级 - 如果工具不可用,绝不阻塞
何时咨询
- 需要全面测试覆盖的复杂领域逻辑
- 关键路径的边界情况识别
- 大型功能的测试架构
- 不熟悉的测试模式
何时跳过
- 简单的单元测试
- 已充分理解的测试模式
- 时间紧迫的 TDD 循环
- 小型、隔离的功能
工具使用
优先使用原生 test-engineer 咨询或 CLI 支持的询问界面(如果可用)。可选的 MCP 兼容询问工具仅在已启用时方可使用。如果咨询工具不可用,则回退到 test-engineer Agent。
记住: 纪律本身就是价值。走捷径会毁掉收益。
评论
支持 Markdown