← ClaudeAtlas

tddlisted

入出力が明確な新規関数・ユーティリティを追加するとき、「テスト駆動で実装して」「red-green-refactorで」と言われたときに必ず使う。
takayoshitoyoda05/claude-ml-template · ★ 1 · Testing & QA · score 72
Install: claude install-skill takayoshitoyoda05/claude-ml-template
# テスト駆動開発(TDD) 1振る舞いずつ、失敗するテストを書いてから実装する。 ## 進め方(1振る舞いにつき) 1. **Red**: 実装したい振る舞いに対する、失敗するテストを1つ書く。 まだ実装がないので失敗することを確認する。 2. **Green**: そのテストを通す最小限の実装を書く。他の振る舞いのことは 考えず、今のテストを通すことだけに集中する。 3. **Refactor**: テストが通ったままの状態で、重複や汚いコードを整理する。 このステップでは新しい振る舞いを追加しない。 4. 次の振る舞いに進み、1に戻る。 ## 適用範囲の判断 - 新規のユーティリティ関数、データ変換処理、評価指標の計算など、 入出力が明確な処理に向いている。 - 探索的な実験スクリプト(ノートブック的な試行錯誤)には無理に適用しない。 「この関数はTDDで作るべきか」迷ったら、入出力が固定できるかどうかで判断する。 ## 注意 - 1テスト1振る舞い。複数の振る舞いをまとめてテストしない。 - Greenの段階で、まだ確認していない振る舞いまで先回りして実装しない (YAGNI: 必要になってから作る)。 - CONTEXT.md があれば先に読み、テストで使う用語をプロジェクトの言葉に合わせる。