tdd
"测试驱动开发。适用于需要以测试先行方式构建功能或修复 bug、提及"红-绿-重构"循环、或需要集成测试的场景。"
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
"测试驱动开发。适用于需要以测试先行方式构建功能或修复 bug、提及"红-绿-重构"循环、或需要集成测试的场景。"
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
询问哪种技能或流程适合你的情况。本仓库技能的导航器。
沿两个轴线审查自某个固定点(commit、分支、tag 或合并基准)以来的变更 — 标准(代码是否遵循此仓库已记录的编码规范?)和规范(代码是否匹配原始 issue/PRD 要求的内容?)。以并行子 agent 运行两项审查,并将结果并排呈现。当用户想要审查分支、PR、进行中的变更,或要求"从 X 开始审查"时使用。
设计深层模块的共享词汇。当用户想要设计或改进模块接口、寻找深化机会、决定缝合点放在哪里、使代码更可测试或更适合 AI 导航,或当其他技能需要深层模块词汇时使用。
针对疑难 bug 和性能回归的诊断循环。当用户说"诊断"/"调试这个",或报告有东西损坏/抛出异常/失败/变慢时使用。
构建和精炼项目的领域模型。当用户想要确定领域术语或通用语言、记录架构决策,或当其他技能需要维护领域模型时使用。
一场无情的面试,用于打磨方案或设计。
| name | tdd |
| description | "测试驱动开发。适用于需要以测试先行方式构建功能或修复 bug、提及"红-绿-重构"循环、或需要集成测试的场景。" |
TDD 是红 → 绿循环。此技能是该循环的参考指南,确保该循环产出的测试值得保留:什么是一个好的测试、测试放在哪里、反模式、以及循环的规则。每个章节在每次循环中都适用 —— 在循环之前和循环期间查阅,而不是之后。
在探索代码库时,读取 CONTEXT.md(如果存在),使测试名称和接口词汇与项目的领域语言保持一致,并尊重所涉及区域的 ADR。
测试通过公共接口验证行为,而不是实现细节。代码可以完全改变;测试不应该。一个好的测试读起来像规范 —— "用户可以使用有效购物车结账" 准确地告诉你存在什么能力 —— 并且在重构后能够存活,因为它不关心内部结构。
参见 tests.md 了解示例,mocking.md 了解 Mock 指南。
接缝(seam) 是你进行测试的公共边界:你在该接口处观察行为而不触及内部。测试位于接缝处,绝不针对内部细节。
仅在预先约定的接缝处进行测试。 在编写任何测试之前,写下要测试的接缝并与用户确认。没有在未确认的接缝处编写测试。你无法测试一切 —— 提前约定接缝可以确保测试工作集中在关键路径和复杂逻辑上,而不是每个边缘情况。
问:"公共接口是什么,我们应该在哪些接缝处进行测试?"
expect(add(a, b)).toBe(a + b)、以相同方式手动推导的快照、将常量断言为等于自身),因此它在构造上就必然通过,永远不可能与代码产生分歧。预期值必须来自独立的真相来源 —— 已知正确的字面量、手工计算示例、规范。code-review 技能),而不是红 → 绿实现循环的一部分。