Appearance
Everything Claude Code 的 tdd-workflow Skill 是实现生产级 AI 辅助开发的核心测试驱动引擎。它强制在新功能、Bug 修复和重构等全流程中先写测试、后写实现,覆盖单元、集成、E2E 各层测试,并自动校验 80%+ 覆盖率和 Git 检查点。通过标准化 TDD 步骤、覆盖率门槛和自动化验证,极大提升代码质量、可维护性和交付安全,适用于所有使用 Claude Code、Codex、Cursor 等 AI 编程助手的开发者团队。
Everything Claude Code TDD Workflow Skill:测试先行强制 80%+ 覆盖率的单元/集成/E2E 全周期 TDD
在 AI 编程助手驱动的现代开发流程中,如何确保自动生成代码的质量、可维护性与可回归性?Everything Claude Code 的 tdd-workflow Skill 正是为此设计:它将测试驱动开发(TDD)原则深度集成到 AI 代码生成与修改的每一个环节,强制实现“测试先行、覆盖率达标、全流程可追溯”的工程标准。
本 Skill 适用于使用 Claude Code、Codex、Cursor 等 AI 编程插件的开发者,尤其适合追求生产级质量、团队协作和持续交付的场景。它与 Everything Claude Code 完全指南 所描述的 Agent/Skill/Hook/Rule 体系深度协作,是实现自动化、标准化、高覆盖率 TDD 的关键基石。
tdd-workflow Skill 解决了什么问题?
传统 AI 辅助编程容易出现以下痛点:
- 只生成实现代码,测试覆盖率低,缺乏回归保障
- 测试与实现混杂,流程不可追溯,Bug 修复无证据链
- 缺少覆盖率门槛,E2E 测试和集成测试常被忽视
- 团队成员难以复现问题,代码变更风险高
启用 tdd-workflow Skill 后,AI 会自动引导开发者:
- 明确每次变更的用户旅程(User Journey)和测试用例
- 强制先写测试(RED),再实现(GREEN),最后重构(REFACTOR)
- 覆盖单元、集成、E2E 三层测试,自动校验 80%+ 覆盖率
- 通过 Git 检查点(Checkpoint Commit)记录每一阶段,便于回溯和审计
- 自动化 Mock 外部依赖,确保测试隔离与可重复执行
触发条件:何时激活 tdd-workflow Skill?
- 开发新功能或 API 端点
- 修复线上/线下 Bug
- 进行代码重构或架构调整
- 新增组件、服务、数据库操作等
- 任何需要保证变更安全、可回归的场景
只要涉及业务代码、接口、核心逻辑的修改,tdd-workflow Skill 都会自动介入,确保流程标准化。
全流程操作指南(Step by Step)
Step 1:明确用户旅程(User Journey)
每次变更都要先描述用户视角下的目标。例如:
作为用户,我希望可以语义搜索市场,以便即使没有精确关键词也能找到相关市场。Step 2:生成全面测试用例
AI 会自动为每个用户旅程生成单元、集成、E2E 测试用例,覆盖正常流程、边界条件、异常场景:
typescript
describe('Semantic Search', () => {
it('returns relevant markets for query', async () => { /* ... */ })
it('handles empty query gracefully', async () => { /* ... */ })
it('falls back to substring search when Redis unavailable', async () => { /* ... */ })
it('sorts results by similarity score', async () => { /* ... */ })
})Step 3:运行测试(RED 阶段)
此时测试应该失败,证明用例已被执行且覆盖到待开发/修复的业务路径:
bash
npm test
# 所有新测试应 RED(失败),未实现代码不得提前编写注意:只有测试已被实际编译并执行,且因业务未实现或 Bug 导致失败,才算有效的 RED。此阶段必须在 Git 当前分支打 checkpoint commit,例如:
bash
git add .
git commit -m "test: add reproducer for <功能或 Bug>"Step 4:实现最小代码(GREEN 阶段)
根据测试驱动,编写最少量的业务代码以让所有新测试通过:
typescript
export async function searchMarkets(query: string) {
// 实现逻辑
}此时暂不提交,待全部测试通过后再打 checkpoint。
Step 5:再次运行测试(GREEN 验证)
bash
npm test
# 所有相关测试应全部通过确认测试通过后,立即提交 GREEN 检查点:
bash
git add .
git commit -m "fix: <功能或 Bug>"Step 6:重构与优化
在测试通过的基础上进行代码重构、命名优化、性能提升等,确保测试持续为 GREEN:
bash
git add .
git commit -m "refactor: clean up after <功能或 Bug> implementation"Step 7:校验覆盖率
强制要求 80%+ 的全局覆盖率(包括单元、集成、E2E):
bash
npm run test:coverage
# 检查覆盖率报告,未达标需补充测试可在 jest.config.js 或等效配置中设定覆盖率阈值:
json
{
"jest": {
"coverageThresholds": {
"global": {
"branches": 80,
"functions": 80,
"lines": 80,
"statements": 80
}
}
}
}Step 8:持续集成与自动化
- 开启
npm test -- --watch实时测试 - 配置 pre-commit 钩子强制测试与 Lint
- 在 CI/CD(如 GitHub Actions)中自动执行测试与上传覆盖率报告
yaml
- name: Run Tests
run: npm test -- --coverage
- name: Upload Coverage
uses: codecov/codecov-action@v3输出示例
- RED 阶段 commit:
test: add reproducer for semantic search - GREEN 阶段 commit:
fix: semantic search - REFACTOR 阶段 commit:
refactor: clean up after semantic search implementation - 覆盖率报告:
Statements : 85.2% (threshold 80%)
常见配套 Agent 与 Skill 协作
- 与 TDD Guide Agent 协作,自动生成测试用例、校验 RED/GREEN 状态
- 与 E2E Runner Agent 配合,自动生成 Playwright E2E 测试
- 搭配 AI Regression Testing Skill 检查回归盲区
- 可与 Verification Loop Skill 组成端到端自动化验证闭环
与其他 Skill 的协作关系
tdd-workflow Skill 是 Everything Claude Code 完全指南 体系下的基础能力,常与代码审查、CI/CD、Hook 自动化、Rules 规则集等协同,保证每次变更都可回溯、可验证、可持续演进。
最佳实践与注意事项
- 测试不是可选项,任何业务变更都必须经过 RED-GREEN-REFACTOR 流程
- 覆盖率门槛不可降低,80%+ 是底线,核心路径建议 90%+
- 每步都需在当前分支打 checkpoint commit,避免历史污染与证据链丢失
- Mock 外部依赖,如 Supabase、Redis、OpenAI 等,确保测试隔离
- 测试用例关注用户可见行为,不测内部实现细节
- 保持测试独立性,避免测试间依赖
- 用语义选择器写 E2E 测试,提升稳定性
FAQ
Q: tdd-workflow Skill 会强制所有变更都先写测试吗?
A: 是的,无论新功能、Bug 修复还是重构,AI 都会引导先写测试、后写实现,确保每次变更可验证、可追溯。
Q: 如何保证 80%+ 的覆盖率?
A: Skill 会自动生成多层测试用例,并在每次提交前后运行覆盖率校验,未达标时阻断流程并提示补测。
Q: 支持哪些测试类型?
A: 覆盖单元测试、集成测试(如 API/数据库)、E2E 测试(如 Playwright),并支持外部依赖 Mock,适配主流前后端技术栈。