Agent skill · software engineering · affaan-m

tdd-workflow

在编写新功能、修复错误或重构代码时使用此技能。强制执行测试驱动开发,确保单元测试、集成测试和端到端测试的覆盖率超过80%。

Why this skill is useful

Provides a comprehensive TDD workflow with specific testing patterns and coverage requirements that the AI wouldn't reliably generate on its own.

What it needs

About 4k tokens when loaded. Last updated 2026-08-06. 238,342 stars on the source repository.

What this skill does

测试驱动开发工作流 此技能确保所有代码开发遵循TDD原则,并具备全面的测试覆盖率。 何时激活 编写新功能或功能 修复错误或问题 重构现有代码 添加API端点 创建新组件 核心原则 1. 测试优先于代码 始终先编写测试,然后实现代码以使测试通过。 2. 覆盖率要求 最低80%覆盖率(单元 + 集成 + 端到端) 覆盖所有边缘情况 测试错误场景 验证边界条件 3. 测试类型 单元测试 单个函数和工具 组件逻辑 纯函数 辅助函数和工具 集成测试 API端点 数据库操作 服务交互 外部API调用 端到端测试 (Playwright) 关键用户流程 完整工作流 浏览器自动化 UI交互 TDD 工作流步骤 步骤 1: 编写用户旅程 步骤 2: 生成测试用例 针对每个用户旅程,创建全面的测试用例: 步骤 3: 运行测试(它们应该失败) 步骤 4: 实现代码 编写最少的代码以使测试通过: 步骤 5: 再次运行测试 步骤 6: 重构 在保持测试通过的同时提高代码质量: 消除重复 改进命名 优化性能 增强可读性 步骤 7: 验证覆盖率 测试模式 单元测试模式 (Jest/Vitest) API 集成测试模式 端到端测试模式 (Playwright) 测试文件组织 模拟外部服务 Supabase 模拟 Redis 模拟 OpenAI 模拟 测试覆盖率验证 运行覆盖率报告 覆盖率阈值 应避免的常见测试错误 FAIL: 错误:测试实现细节 PASS: 正确:测试用户可见的行为 FAIL: 错误:脆弱的定位器 PASS: 正确:语义化定位器 FAIL: 错误:没有测试隔离 PASS: 正确:独立的测试 持续测试 开发期间的监视模式 预提交钩子 CI/CD 集成 最佳实践 1. 先写测试 - 始终遵循TDD 2. 每个测试一个断言 - 专注于单一行为 3. 描述性的测试名称 - 解释测试内容 4. 组织-执行-断言 - 清晰的测试结构 5. 模拟外部依赖 - 隔离单元测试 6. 测试边缘情况 - Null、undefined、空、大量数据 7. 测试错误路径 - 不仅仅是正常路径 8. 保持测试快速 - 单元测试每个 < 50ms 9. 测试后清理 - 无副作用 10. 审查覆盖率报告 - 识别空白 成功指标 达到 80%+ 代码覆盖率 所有测试通过(绿色) 没有跳过或禁用的测试 快速测试执行(单元测试 < 30秒) 端到端测试覆盖关键用户流程 测试在生产前捕获错误 记住:测试不是可选的。它们是安全网,能够实现自信的重构、快速的开发和生产的可靠性。

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills affaan-m/tdd-workflow--60ca42

View the source on GitHub

Browse the @skills marketplace