テスト駆動開発(TDD)とは?
テスト駆動開発(TDD)とは、実装コードを書く前に、そのコードが満たすべきテストコードを先に書き、テストが失敗することを確認してから最小限の実装で通し、その後リファクタリングする(レッド・グリーン・リファクタ)開発手法。仕様の明確化と回帰テストの整備を同時に達成する。
プロジェクトマネージャ試験の過去問では3回出題されています(2016年度〜2022年度)。
てすとくどうかいはつ
テスト駆動開発(TDD)の意味
実装コードを書く前に、そのコードが満たすべきテストコードを先に書き、テストが失敗することを確認してから最小限の実装で通し、その後リファクタリングする(レッド・グリーン・リファクタ)開発手法。仕様の明確化と回帰テストの整備を同時に達成する。
テスト駆動開発(TDD)の具体例
「消費税計算が端数切り捨てになる」ことを示すテストを先に書き、それを通す実装を加えてから、重複を整理する。
テスト駆動開発(TDD)は試験でどう引っ掛けられる?
「実装後にテストを充実させる」のはTDDではない。テストを先に書くことが定義。
テスト駆動開発(TDD)と関連する用語
テスト駆動開発(TDD)が出た過去問
XP(eXtreme Programming)のプラクティスの一つに取り入れられているものはどれか。
正解:ペアプログラミング
要点:XPの代表的プラクティスはペアプログラミングやテスト駆動開発
XPのプラクティスにはペアプログラミング、テスト駆動開発、リファクタリング、継続的インテグレーション、シンプルデザインなどがある。ペアプログラミングは2人1組で1台の端末を使い、実装役と確認役を交代しながら進める手法で、欠陥の早期発見と知識共有の効果がある。
出典:平成28年度 春期 プロジェクトマネージャ試験 am2 問19(IPA)エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
正解:プログラムを書く前にテストケースを作成する。
要点:テスト駆動開発は実装より先にテストを書く順序が本質
テスト駆動開発は、実装コードを書く前にまずそのコードが満たすべきテストケースを書き、テストが失敗する状態から始めて、通るように実装し、その後リファクタリングするという流れを繰り返す手法である。テストが仕様の記述を兼ねるため、作るべきものが明確になり、変更時の安全網にもなる。
出典:平成30年度 春期 プロジェクトマネージャ試験 am2 問17(IPA)XP(Extreme Programming)のプラクティスの一つであるものはどれか。
正解:ペアプログラミング
要点:ペアプログラミングはXPの代表的なプラクティス
XPは少人数でのソフトウェア開発を対象とし、コミュニケーション、シンプルさ、フィードバック、勇気、尊重という価値を掲げて具体的なプラクティスを定めている。ペアプログラミングはその代表で、2人が1台の端末で役割を交代しながらコードを書き、その場でレビューしつつ知識を共有する。テスト駆動開発やリファクタリング、継続的インテグレーションなども同様にXPのプラクティスである。
出典:令和4年度 秋期 プロジェクトマネージャ試験 am2 問16(IPA)
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。