平成30年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問23
テクノロジ/開発技術エクストリームプログラミング(XP:eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
出典:平成30年度 春期 情報処理安全確保支援士試験 午前Ⅱ 問23
- ア最初のテストで,なるべく多くのバグを摘出する。
- イテストケースの改善を繰り返す。
- ウテストでのカバレージを高めることを重視する。
- エプログラムを書く前にテストケースを作成する。
正解:エ
解説
エクストリームプログラミング(XP)における“テスト駆動開発”(Test-Driven Development:TDD)は,実際にプログラム(実装コード)を書く前に,まずそのプログラムが満たすべき仕様を表すテストケースを作成し,そのテストが失敗することを確認してから,テストを通過させるための最小限の実装を行い,その後リファクタリングを行うというサイクルを繰り返す開発手法です。テストを先に書くことによって,仕様の明確化と,実装の妥当性を継続的に確認しながら開発を進めることができます。
選択肢ごとの解説
- ア誤り。最初のテストでなるべく多くのバグを摘出することを重視するのは,一般的なテスト戦略の考え方であり,テスト駆動開発に固有の特徴ではありません。
- イ誤り。テストケースの改善を繰り返すこと自体は,テスト駆動開発において結果的に行われることはあっても,その本質的な特徴を表す説明ではありません。
- ウ誤り。テストでのカバレージを高めることを重視するのは,網羅的なテスト設計に関する一般的な考え方であり,テスト駆動開発固有の特徴ではありません。
- エ正しい。プログラムを書く前にテストケースを作成することが,テスト駆動開発の特徴です。