テスト駆動開発 | 応用情報技術者試験
テスト駆動開発(TDD)とは
テスト駆動開発(TDD:Test-Driven Development)は、実際の製品プログラムを書く前に、まず「そのプログラムが満たすべき仕様を確認するテストコード」を先に書き、そのテストに合格するように少しずつ製品プログラムを実装していくソフトウェア開発の手法です。「①失敗するテストを書く(Red)」「②テストを通る最小限のコードを書く(Green)」「③コードを綺麗に整理する(Refactor)」という3つのステップ(サイクル)を小刻みに繰り返すことで、バグが少なく、設計のクリーンなソフトウェアを安全に作ることができます。
具体例
例えば、「入力された2つの数値を足し算する関数」を作る場合、まず「足し算の関数に2と3を渡したら、結果が5になること」を確かめるテストを先に書きます。この時点では中身の関数が空なのでテストは失敗します(Red)。次に、急いで「2 + 3 = 5」を返すような単純な処理を書いてテストを合格させます(Green)。最後に、どんな数値でも動くように関数を整理・修正します(Refactor)。