TDD
てぃーでぃーでぃー
TDD
一言でいうと
テストを先に書いてから実装する開発スタイルのこと。
詳しい意味
TDD(Test-Driven Development、テスト駆動開発)は、テストを先に書いてから実装する開発スタイルです。基本サイクルは「Red(失敗するテストを書く)→ Green(テストが通る最小限の実装をする)→ Refactor(重複や設計の悪さを直す)」の3ステップを繰り返します。利点は (1) 設計を「使う側の視点」で考えられる、(2) 想定挙動が常にテストとして残る、(3) リファクタリング時の安全網になる、こと。一方で「全コード TDD でやるべき」という原理主義は実務では非現実的で、複雑な箇所・長く保守する箇所だけ TDD を選ぶ実用派が多いです。
何に使うか
新規機能を慎重に作りたいとき。バグ修正を行うとき(再現テストを先に書いて、それが通るように修正)。設計が固まりきらないコードを試行錯誤しながら作るとき。
どんな時に出るか
「ここはTDDで進める」「TDDでバグ修正」「TDD原理主義」といった場面で登場します。
具体例
- 決済ロジックは間違えると致命的なので、TDDで進めた。
- 再現バグを先にテストで固定してから修正した(バグ駆動開発)。
別名・略称
tdd(てぃーでぃーでぃー)Test-Driven Development(てすとどりぶんでべろっぷめんと)テスト駆動開発(てすとくどうかいはつ)
関連語
初心者向けメモ
受験勉強で「過去問を先に見てから対策本を読む」のと似ています。ゴール(テスト)を先に決めれば、ムダのない最短ルートで実装できます。「やりすぎない」「複雑な部分だけ採用」が現実的な使い方です。