agentleFS
TashanGKDTashanGKD/cc_plugins/.claude/skills/tdd/SKILL.md

tdd

Skill4 starsChanged 10 months agoMITView on GitHub

测试驱动开发(TDD)流程助手。严格遵循红-绿-重构循环,包含会话状态管理、测试运行策略、Git 提交规范。用户提到 TDD、测试先行、红绿重构时使用。

194 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use capture-learning-tools, design-frontend-dev and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • The-Vibe-CompanySkill

    capture-learning-tools

    Turn technical conversations, bugs, CI failures, review comments,

    Also in 5 projects that use this

  • The-Vibe-CompanySkill

    design-frontend-dev

    Clean Impeccable frontend design skill. Use when the user wants to

    Also in 5 projects that use this

  • tristanphvnSkill

    ketchup-video

    Catch the user up like /keel:ketchup, with a short silent video of slides for what happened and the waiting calls as text under it. Use for /keel:ketchup-video.

    Also in 14 projects that use this

  • jaydubya818Skill

    figure-it-out

    Use when novel or multi-phase work needs an auditable workflow and no narrower playbook fits.

    Also in 54 projects that use this

  • jaydubya818Skill

    principle-laziness-protocol

    Apply when a refactor is adding wrappers or abstractions instead of simplifying.

    Also in 45 projects that use this

  • +2 more from The-Vibe-Company
  • +5 more from jaydubya818

The file

Files
SKILL.md

TDD 编程模式

快速反馈是 TDD 的核心

严格遵循测试驱动开发(Test-Driven Development)流程:红 → 绿 → 重构。


1. TDD 循环

1.1 🔴 红 - 编写失败的测试

pytest tests/test_new_feature.py -v

Git:git commit -m "test: 添加 xxx 功能的失败测试"

1.2 🟢 绿 - 编写最少代码使测试通过

pytest tests/test_new_feature.py -v

Git:git commit -m "feat: 实现使测试通过的 xxx 功能"

1.3 ♻️ 重构 - 在测试保护下优化代码

pytest tests/test_module.py -v

Git:git commit -m "refactor: 重构 xxx 功能代码"


2. 测试运行策略

场景命令
开发单个功能pytest tests/test_xxx.py
调试特定测试pytest -k "test_login"
重跑失败测试pytest --lf
失败优先pytest --ff
按类型运行pytest -m unit

提交前验证:pytest && uv run ruff check && uv run mypy .


3. 测试规范

规范要求
AAA 模式Arrange → Act → Assert
命名规范test_<功能>_<条件>_<期望>
单一职责一个测试一个行为,≤20 行
测试金字塔单元 70% / 集成 20% / E2E 10%
覆盖率核心 ≥80%,整体 ≥70%

4. Git 提交规范

阶段前缀示例
红(测试)test:test: 添加用户登录的失败测试
绿(实现)feat:feat: 实现用户登录功能
重构refactor:refactor: 优化登录验证逻辑
修复fix:fix: 修复登录验证 bug

5. TDD 会话模式

运行 /tdd 时自动管理会话状态,保存在 tmp/tdd-session-<timestamp>.json。

会话信息包括:

  • 当前阶段(红/绿/重构)
  • 迭代次数
  • 测试文件和结果
  • Git commit 数量
# 查看会话状态
/tdd --status

# 取消会话
rm tmp/tdd-session-*.json

快速反馈 → 快速迭代 → 高质量代码

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.