AgentSkillsCN

tdd

运用 TDD 技能,践行红-绿-重构的循环模式。适用于先以测试驱动开发功能特性,以最少的代码通过测试,再进行重构。将测试执行与主流程的统筹环境隔离,确保测试的独立性。

SKILL.md
--- frontmatter
name: tdd
description: Test-Driven Development (TDD) skill for Red-Green-Refactor cycle. Use when implementing features with tests first, minimal code to pass, then refactor. Isolates test execution from main orchestrator context.

SKILL: Test-Driven Development (TDD)

Purpose: Execute TDD Red-Green-Refactor cycle for feature implementation Target: Coder Agent implementing features with test-first methodology ⚠️ Subagents Only: This skill is for coder/tester subagents. Main orchestrator must delegate via Task tool.


Quick Start

When to Use This Skill

  • Implement new feature with test coverage
  • Fix bug with regression tests
  • Refactor code with test safety net

Quick Reference

bash
# Red: pytest tests/test_feature.py -k "SC-1"  # FAIL
# Green: [Implement feature]
# Refactor: [Refactor code]
# Verify: pytest  # ALL PASS

What This Skill Covers

In Scope

  • Red-Green-Refactor cycle execution
  • Test-first development methodology
  • Minimal implementation for Green phase

Out of Scope

  • Test framework selection → @.claude/skills/tdd/REFERENCE.md
  • Coverage thresholds → @.claude/skills/ralph-loop/SKILL.md
  • Code quality standards → @.claude/skills/vibe-coding/SKILL.md

Core Concepts

The TDD Cycle: Red-Green-Refactor

Phase 1: Red - Write Failing Test

python
def test_add_two_numbers():
    result = calculator.add(2, 3)
    assert result == 5

Run test → Confirm it FAILS (❌)

Phase 2: Green - Minimal Implementation

python
def add(a, b):
    return a + b  # Just enough to pass

Run test → Confirm it PASSES (✅)

Phase 3: Refactor - Improve Quality

python
def add(a: int, b: int) -> int:
    """Add two integers with type safety."""
    return a + b

Run ALL tests → Confirm ALL PASS (✅)

Why TDD Matters

  • Tests drive design: API designed from usage perspective
  • Regression safety: Refactor without fear
  • Living documentation: Tests show intended behavior
  • Fast feedback: Catch issues immediately

Further Reading

Internal: @.claude/skills/tdd/REFERENCE.md - Advanced TDD concepts, patterns, and examples | @.claude/skills/ralph-loop/SKILL.md - Autonomous completion loop | @.claude/skills/vibe-coding/SKILL.md - Code quality standards | @.claude/skills/tdd/REFERENCE.md - Test framework detection

External: Test-Driven Development by Kent Beck | Growing Object-Oriented Software, Guided by Tests