MZWASHERE

tdd-workflow

0
0
# Install this skill:
npx skills add MZWASHERE/claude-conductor --skill "tdd-workflow"

Install specific skill from multi-skill repository

# Description

Test-Driven Development guidance. Use when writing code, implementing features, or fixing bugs in projects that follow TDD methodology. Provides the Red-Green-Refactor cycle structure.

# SKILL.md


name: tdd-workflow
description: Test-Driven Development guidance. Use when writing code, implementing features, or fixing bugs in projects that follow TDD methodology. Provides the Red-Green-Refactor cycle structure.


TDD Workflow Skill

Guidance for Test-Driven Development methodology.

The Core Cycle

RED → GREEN → REFACTOR (repeat)

Phase Purpose Actions Verify
RED Define expected behavior Write test for ONE behavior, run test Test FAILS
GREEN Make it work Write MINIMUM code to pass Test PASSES
REFACTOR Make it clean Improve ONE thing at a time, run tests after each change Tests stay GREEN

Phase 1: RED - Write Failing Test

Purpose: Define behavior before implementation.

Actions:
1. Create/open test file
2. Write test for ONE behavior
3. Run test
4. Verify FAILURE (if it passes, test is wrong)

Common mistakes: Tests pass immediately, testing implementation not behavior, writing too many tests at once

Phase 2: GREEN - Make It Pass

Purpose: Write MINIMUM code to pass test.

Actions:
1. Implement just enough to pass
2. No extra features, no optimization
3. Run tests, verify PASS

Common mistakes: Over-engineering, adding untested features, "while I'm here" additions

Phase 3: REFACTOR - Improve Quality

Purpose: Clean up while keeping tests green.

Actions:
1. Identify improvements: duplication, naming, complex logic, long functions
2. Make ONE change
3. Run tests
4. If green, continue. If red, undo.

Checklist: Extract methods, rename variables, remove duplication (DRY), simplify conditionals, add type safety

Test Patterns

Arrange-Act-Assert (AAA):
1. Arrange: Set up test data
2. Act: Execute the behavior
3. Assert: Verify result

Given-When-Then (BDD): Structure nested describes for readability

Coverage Commands

Language Command
JS/TS (Jest) npx jest --coverage
JS/TS (Vitest) npx vitest run --coverage
Python pytest --cov=src --cov-report=html
Go go test -cover ./...

Anti-Patterns to Avoid

  1. Test After: Writing code first defeats TDD purpose
  2. Testing Implementation: Test WHAT it does, not HOW (test behavior, not internal calls)
  3. Brittle Tests: Use resilient assertions (e.g., toContainEqual not array index checks)
  4. No Refactoring: Skipping refactor creates technical debt

Quick Reference

  • RED: "What should it do?" → Write failing test
  • GREEN: "Does it work?" → Write minimal code
  • REFACTOR: "Is it clean?" → Improve structure

For detailed code examples, see examples.md in this skill directory.

Integration

Works with:
- context-awareness: Project-specific coverage targets
- code-styleguides: Language-specific test patterns

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.