use-workflow-tdd-cyclelisted
Install: claude install-skill thkt/dotclaude
# use-workflow-tdd-cycle
公開 API を通して振る舞いをテストする。Mock はシステム境界でのみ。
## バリアント選択
下表でバリアントが決まらないとき、およびテストが実装を検証していないか確かめるときは ${CLAUDE_SKILL_DIR}/references/test-philosophy.md を読む。
| トリガー | バリアント | 参照 |
| ------------------------------------ | --------------- | ---------------------------------------------------- |
| spec.md / 新機能 (`/code`) | Feature-driven | ${CLAUDE_SKILL_DIR}/references/feature-driven.md |
| バグ報告 / リグレッション (`/fix`) | Bug-driven | ${CLAUDE_SKILL_DIR}/references/bug-driven.md |
| 既存コードベースのカバレッジギャップ | Coverage-driven | テストを active にし skip しない。下記 RGRC を再利用 |
## 何をテストするか
| 優先度 | 内容 |
| -------- | ---------------------------------------------------------- |
| 必須 | ビジネスロジック、サービス、クリティカルパス、エッジケース |
| 文脈依存 | 複雑な util、custom hook、変換 |
| スキップ | 単純な accessor、UI レイアウト、外部ライブラリの挙動 |
### TDD を使わない場面
| 文脈 | 理由 |
| ------------------------- | ------------------------------------- |
| 使い捨てのプロトタイプ | 廃棄される可能性が高い、コスト > 効果 |
| 外部 API 連携 | API を mock する。連携は mock しない |
| 単純な one-off スクリプト | テストの方が長くなる |
| UI 実験 | まずビジュアル、後でロジックを抽出 |
## RGRC サイクル
Red でテストを書く前に ${CLAUDE_SKILL_DIR}/references/writing-tests.md を読み、テスト設計技法、アサーション品質、mock の境界を適用する。
| フェーズ | 目標 | ルール