tddcommit 3f59913SKILL.md · 测试与调试
测试驱动开发
以红到绿的循环先写测试再写实现,只在与用户确认过的公共接口上测试行为。
npx skills add mattpocock/skills --skill tdd已选中命令,请手动复制。
- 权限
- read-repo
- write-files
- shell
- network
- 兼容工具
- Claude Code, Codex, Copilot, Gemini CLI
- GitHub
- 308.7k
- 来源
- 社区 · Matt Pocock
- 状态
- 扫描通过
- 许可证
- MIT
- 分类
- 测试与调试
核心规则
先红后绿:先写失败的测试,再只写刚好让它通过的代码。
执行阶段
阶段 01了解领域语言
探索代码时阅读 GLOSSARY.md(如有),让测试命名与项目用语一致,并遵守相关 ADR。
阶段 02确认测试接口
写下要测试的公共接口(seam),各附一行说明能发现和发现不了什么,并请用户确认。
阶段 03写一个失败测试
在一个 seam 上通过公共接口测试行为,期望值来自独立的可信来源而非重算代码逻辑。
阶段 04最小实现
只写让测试通过所需的代码,不预先应对未来的测试,也不加推测性功能。
阶段 05纵向切片循环
一次一个测试、一个实现地重复循环;重构不在循环内,留到代码审查阶段。
权限说明(据 SKILL.md 整理)
| 能力 | 是否需要 | 说明 |
|---|---|---|
| 文件写入 | 需要 | 编写测试以及让测试通过的实现代码。 |
| 命令执行 | 仅测试时需要 | 运行测试,确认先失败再通过。 |
| 网络外发 | 不需要 | 流程中没有网络访问步骤。 |
SKILL.md 头部信息(YAML)
---
name: tdd
description: Test-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.
---相关技能
规则扫描无法覆盖所有风险,安装前请阅读此技能的 SKILL.md,确认权限后再使用。