Use when adding new error messages to React, or seeing "unknown error code" warnings.
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
- Test After: Writing code first defeats TDD purpose
- Testing Implementation: Test WHAT it does, not HOW (test behavior, not internal calls)
- Brittle Tests: Use resilient assertions (e.g.,
toContainEqualnot array index checks) - 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.