mcpField
T
tdd-guide

tdd-guide

github.com/borghei测试与质量1.0k141 次安装1 周前更新
代码仓库

关于 tdd-guide

tdd-guide 是面向开发者的 TDD 技能,可引导红—绿—重构流程,并生成测试、分析覆盖率缺口和评估测试质量。它支持多种测试框架,且仅进行静态分析,不运行测试。

主要功能

  1. 01红—绿—重构流程指导
  2. 02按需求生成测试用例与框架模板
  3. 03解析覆盖率报告并排序缺口
  4. 04评估复杂度、隔离性和测试异味
  5. 05支持 Jest、Pytest、JUnit 等框架

适用场景

  1. 01为新功能先编写失败测试
  2. 02从需求或 API 规格生成测试模板
  3. 03定位并优先处理覆盖率缺口
  4. 04合并前检查测试质量

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/borghei/claude-skills --skill tdd-guide

安装后在 Claude Code 中输入/tdd-guide确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

HOW_TO_USE.md
README.md
assets/
expected_output.json
sample_coverage_report.lcov
sample_input_python.json
sample_input_typescript.json
references/
ci-integration.md
framework-guide.md
tdd-best-practices.md
tool-reference.md
troubleshooting-and-quality.md
workflows.md
scripts/
coverage_analyzer.py
fixture_generator.py
format_detector.py
framework_adapter.py
metrics_calculator.py
output_formatter.py
tdd_workflow.py
test_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