
tdd-workflow
by lackeyjb
Context-Driven Development framework for Claude Code. Inspired by https://github.com/gemini-cli-extensions/conductor
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:
- Create/open test file
- Write test for ONE behavior
- Run test
- 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:
- Implement just enough to pass
- No extra features, no optimization
- 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:
- Identify improvements: duplication, naming, complex logic, long functions
- Make ONE change
- Run tests
- 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):
- Arrange: Set up test data
- Act: Execute the behavior
- 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
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon


