tdd-workflow

Test-Driven Development workflow principles. RED-GREEN-REFACTOR cycle.

View Source
name:tdd-workflowdescription:Test-Driven Development workflow principles. RED-GREEN-REFACTOR cycle.allowed-tools:Read, Write, Edit, Glob, Grep, Bash

TDD Workflow

> Write tests first, code second.


1. The TDD Cycle

🔴 RED → Write failing test

🟢 GREEN → Write minimal code to pass

🔵 REFACTOR → Improve code quality

Repeat...


2. The Three Laws of TDD

  • Write production code only to make a failing test pass

  • Write only enough test to demonstrate failure

  • Write only enough code to make the test pass

  • 3. RED Phase Principles

    What to Write

    FocusExample
    Behavior"should add two numbers"
    Edge cases"should handle empty input"
    Error states"should throw for invalid data"

    RED Phase Rules

  • Test must fail first

  • Test name describes expected behavior

  • One assertion per test (ideally)

  • 4. GREEN Phase Principles

    Minimum Code

    PrincipleMeaning
    YAGNIYou Aren't Gonna Need It
    Simplest thingWrite the minimum to pass
    No optimizationJust make it work

    GREEN Phase Rules

  • Don't write unneeded code

  • Don't optimize yet

  • Pass the test, nothing more

  • 5. REFACTOR Phase Principles

    What to Improve

    AreaAction
    DuplicationExtract common code
    NamingMake intent clear
    StructureImprove organization
    ComplexitySimplify logic

    REFACTOR Rules

  • All tests must stay green

  • Small incremental changes

  • Commit after each refactor

  • 6. AAA Pattern

    Every test follows:

    StepPurpose
    ArrangeSet up test data
    ActExecute code under test
    AssertVerify expected outcome


    7. When to Use TDD

    ScenarioTDD Value
    New featureHigh
    Bug fixHigh (write test first)
    Complex logicHigh
    ExploratoryLow (spike, then TDD)
    UI layoutLow


    8. Test Prioritization

    PriorityTest Type
    1Happy path
    2Error cases
    3Edge cases
    4Performance


    9. Anti-Patterns

    ❌ Don't✅ Do
    Skip the RED phaseWatch test fail first
    Write tests afterWrite tests before
    Over-engineer initialKeep it simple
    Multiple assertsOne behavior per test
    Test implementationTest behavior


    10. AI-Augmented TDD

    Multi-Agent Pattern

    AgentRole
    Agent AWrite failing tests (RED)
    Agent BImplement to pass (GREEN)
    Agent COptimize (REFACTOR)


    > Remember: The test is the specification. If you can't write a test, you don't understand the requirement.

      tdd-workflow - Agent Skills