Test Driven Development
专注非平凡行为的TDD技能
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:Test Driven Development。 它的用途是:专注非平凡行为的TDD技能 完整的 Skill 内容见:https://321skill.com/skills/test-driven-development-x-3/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
'我需要实现一个电商订单的折扣计算规则:满200减30,满500减80,且叠加会员额外9折。请帮我先用TDD方式编写测试用例,先写失败测试并观察失败证据,再实现代码。' AI会先生成三个测试用例(满200、满500、会员叠加),并提示你执行测试观察失败输出,确认后再生成最小实现代码,最后测试通过并形成测试套件。
介绍
这个 Skill 解决的是开发者在编写复杂业务逻辑时,如何确保代码行为正确、可维护且可回归的问题。传统的 TDD 教程往往只演示简单加法或 FizzBuzz,一旦遇到真实业务中的分支、状态、异步、边界条件,开发者就不知道如何下手。本 Skill 提供了一套针对“非平凡行为”的 TDD 实践框架,引导你从行为描述出发,先编写会失败的测试并亲眼验证失败证据,再写恰好能通过的最小代码,最终形成一套可反复执行的测试套件。
使用方法很简单:当你需要实现一个有明确输入输出的功能(如校验规则、折扣计算、状态机转换、数据处理管道)时,先对 AI 说出你的行为意图,AI 会帮你生成对应的失败测试用例,并提示你执行测试观察失败输出。确认失败后,再逐步补全实现代码直至测试通过。整个过程强调“先红后绿”的纪律,并记录每次的失败证据以增强信心。
适合所有需要编写可维护业务代码的开发者,尤其是后端开发、全栈开发以及测试工程师。如果你正在开发微服务、API 接口、业务规则引擎或复杂的数据处理逻辑,这套 TDD 方法能帮你大幅减少回归 Bug,同时让测试用例成为活文档。
使用建议:不要试图对全部代码都使用 TDD,优先覆盖核心逻辑、边界条件和异常路径。对于 UI 交互、I/O 密集型操作或探索性原型,可以暂时跳过。另外,测试失败时一定要仔细阅读失败信息,确保是预期行为未实现而非环境问题。
核心特点
同类 TDD Skill 大多只教“先写测试再写代码”的步骤,本 Skill 专门强调“非平凡行为”的场景,即包含条件分支、循环、状态变化、异步依赖等真实业务逻辑,并且要求先观察测试失败证据(不仅仅是红字),再写最小化代码,确保测试有效性。
注意事项
不适合快速原型、探索性编程或纯 UI 交互场景,因为这类场景行为定义不明确,先写测试会拖慢节奏。
常见问题
TDD 和写单元测试有什么区别?
TDD 是设计方法,先写测试再写代码;单元测试是验证手段,可以先写代码再补测试。本 Skill 强调先写测试,用测试驱动代码设计。
这个 Skill 能用在已有的遗留代码上吗?
可以,但建议先为新增或修改的行为编写测试,不要试图一次性覆盖所有遗留代码。对于遗留代码,先做重构使其可测试,再应用 TDD 添加新功能。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/test-driven-development-x-3/raw/index.md 读取 Test Driven Development 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/test-driven-development-x-3/raw/index.md(查看排版版本)