TDDに関する議論には多くの混乱が見られます。現在は議論が落ち着いているようですが、あまり情報がまとまっていないのでTDDの導入にいまいち踏み切れない方も多くいることでしょう。そこで、そもそものTDDの定義から関連する議論の要点まで、TDDに関連する情報を整理しました。 TDDの定義としては、 「TDDはテストファーストの上に RED / GREEN / REFACTOR のサイクルによる設計・実装手法を加えた開発手法である」 という表現で大きな異論はないかと思われます。 TDDの効果に関しては、TDDの実践によって以下のようなことが起こると言われています。 十分な量の自動テストが存在する状態になり、以下のような恩恵を受けることができる エラーの発見や防止がしやすくなる → プロダクトの品質の指標の一つである不具合発生率の低下に貢献する リファクタリングのリスクを減らし、リファクタリングを