关于 tdd-guide
tdd-guide 是面向开发者的 TDD 技能,可引导红—绿—重构流程,并生成测试、分析覆盖率缺口和评估测试质量。它支持多种测试框架,且仅进行静态分析,不运行测试。
主要功能
- 01红—绿—重构流程指导
- 02按需求生成测试用例与框架模板
- 03解析覆盖率报告并排序缺口
- 04评估复杂度、隔离性和测试异味
- 05支持 Jest、Pytest、JUnit 等框架
适用场景
- 01为新功能先编写失败测试
- 02从需求或 API 规格生成测试模板
- 03定位并优先处理覆盖率缺口
- 04合并前检查测试质量
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ borghei/ claude-skills --skill tdd-guide安装后在 Claude Code 中输入/tdd-guide确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
HOW_TO_USE.mdREADME.mdassets/expected_output.jsonsample_coverage_report.lcovsample_input_python.jsonsample_input_typescript.jsonreferences/ci-integration.mdframework-guide.mdtdd-best-practices.mdtool-reference.mdtroubleshooting-and-quality.mdworkflows.mdscripts/coverage_analyzer.pyfixture_generator.pyformat_detector.pyframework_adapter.pymetrics_calculator.pyoutput_formatter.pytdd_workflow.pytest_generator.py详细介绍
TDD 指南
该 Agent 可指导红-绿-重构 TDD 工作流,根据需求生成特定框架的测试桩,解析覆盖率报告以找出优先处理的缺口,并计算测试质量指标,包括异味检测和断言密度。支持 Jest、Pytest、JUnit、Vitest 和 Mocha。
核心能力
- 红-绿-重构指导 — 阶段验证(RED/GREEN/REFACTOR)、周期跟踪、重构建议
- 测试生成 — 根据用户故事、验收标准和 API 规范生成测试用例及特定框架的测试桩
- 覆盖率缺口分析 — 解析 LCOV/JSON/XML 报告,找出低于阈值的文件,并按 P0/P1/P2 排定优先级
- 测试质量指标 — 圈复杂度/认知复杂度、断言密度、隔离性、命名,以及测试异味检测
- 多框架支持 — 在 Jest、Vitest、Pytest、JUnit、TestNG、Mocha、Jasmine 之间转换测试并生成 fixture/mock
适用场景
- 为新功能先编写一个失败的测试(测试驱动开发)
- 分析覆盖率报告以查找并排列缺口优先级
- 根据需求或 API 规范生成测试桩
- 在不同框架之间转换测试,或搭建 fixture/mock
- 在合并前评估测试质量并检测异味
先确认信息
生成测试或分析覆盖率之前,请确认以下输入。如果任何信息未知或模糊,请提问,不要自行假设:
- 框架与语言 — Jest / Vitest / Pytest / JUnit / Mocha(会影响生成的测试桩和任何转换)
- 任务 — 根据需求生成 / 分析覆盖率 / 指导红-绿-重构周期 / 转换测试(用于选择工具)
- 源输入 — 用户故事 / 验收标准,或要解析的覆盖率报告(LCOV/JSON/XML)(脚本的输入)
停止规则:只询问对输出影响最大的 2-3 项。如果用户说“先起草一版”,则继续执行,并在产物开头列出假设。
快速开始
# Generate test cases from requirements (Python API)
from test_generator import TestGenerator, TestFramework
gen = TestGenerator(framework=TestFramework.PYTEST, language="python")
cases = gen.generate_from_requirements(requirements)
# Analyze coverage gaps from LCOV report
from coverage_analyzer import CoverageAnalyzer
analyzer = CoverageAnalyzer()
analyzer.parse_coverage_report(content, "lcov")
gaps = analyzer.identify_gaps(threshold=80.0)
# Guide TDD cycle
from tdd_workflow import TDDWorkflow
wf = TDDWorkflow()
wf.start_cycle("User can reset password via email")
参考资料
根据任务加载相应参考资料 — 保持此文件精简,按需获取详细信息:
- references/workflows.md — TDD 开发功能、分析覆盖率缺口以及根据需求生成测试的分步流程,每个流程都包含验证检查点。开始三种核心工作流中的任何一种时阅读。
- references/tool-reference.md — 全部八个脚本的完整 API(构造函数、方法、参数、示例)以及工具摘要表。需要准确的模块名称或方法签名时阅读。
- references/tdd-best-practices.md — 红-绿-重构规范、命名/结构指南、测试质量原则和覆盖率目标。决定如何编写或评估测试时阅读。
- references/framework-guide.md — 框架选择矩阵、配置,以及 TypeScript/JS、Python 和 Java 的测试模式,并附版本要求。设置或选择测试框架时阅读。
- references/ci-integration.md — 覆盖率报告流程、GitHub Actions 示例(Jest/Pytest/JaCoCo)、质量门禁和趋势跟踪。将覆盖率和质量门禁接入 CI 时阅读。
- references/troubleshooting-and-quality.md — 反模式、故障排查表和成功标准。测试行为异常或定义测试质量标准时阅读。
范围与限制
此技能涵盖:
- 为 Jest、Pytest、JUnit、Vitest 和 Mocha 生成单元测试、搭建脚手架和创建存根
- 解析静态覆盖率报告(LCOV、JSON/Istanbul、XML/Cobertura),识别覆盖缺口并提供优先级建议
- 提供红-绿-重构工作流指导,包括阶段验证和周期跟踪
- 评估测试质量,包括复杂度分析、隔离性评分、命名质量和测试异味检测
此技能不涵盖:
- 集成测试、端到端测试或性能测试生成——E2E 模式请参阅
senior-qa,负载测试请参阅senior-devops - 运行时测试执行或实时覆盖率测量——脚本仅执行静态分析;你必须在外部运行测试套件
- 视觉/快照测试或基于浏览器的测试工作流——UI 级测试请使用 Playwright、Cypress 或 Storybook
- 面向安全的测试生成(模糊测试、渗透测试)——请参阅
senior-security和senior-secops技能
集成点
| 技能 | 集成方式 | 数据流 |
|---|---|---|
senior-qa | 生成的测试存根会进入 QA 审查工作流;QA 覆盖率标准为阈值设置提供依据 | test_generator.py 输出 → QA 审查 → 已批准的测试套件 |
code-reviewer | 指标计算器的输出为代码审查清单提供量化数据 | metrics_calculator.py 质量报告 → 代码审查评分 |
senior-fullstack | 搭建脚手架的项目包含测试基础设施;TDD 指南会为搭建脚手架的模块生成测试 | project_scaffolder.py 输出 → test_generator.py 输入 |
senior-devops | 覆盖率分析器会解析 CI 流水线中的覆盖率报告;建议会反馈到流水线关卡中 | CI 覆盖率构件 → coverage_analyzer.py → 通过/失败关卡 |
senior-security | 用于身份验证和 API 场景的边界情况测试夹具可补充面向安全的测试计划 | fixture_generator.py 身份验证/API 边界情况 → 安全测试计划 |
tech-stack-evaluator | 框架检测为技术栈评估提供信息;测试质量指标会纳入技术评估 | format_detector.py 分析 → 技术栈评估输入 |
评论
支持 Markdown