情報処理安全確保支援士試験 情報処理安全確保支援士試験 令和3年度春期 午前Ⅱ 問23: エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
←情報処理安全確保支援士試験 令和3年度春期 午前Ⅱ
エクストリームプログラミング(: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
問題本文
エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。
選択肢
- ア.最初のテストで,なるべく多くのバグを摘出する。
- イ.テストケースの改善を繰り返す。
- ウ.テストでのカバレージを高めることを目的とする。
- エ.プログラムを書く前にテストコードを記述する。
正解
エ. プログラムを書く前にテストコードを記述する。
解説
テスト駆動開発(TDD)は、XPのプラクティスの一つで、実装コードを書く前にまずテストコードを書く点が最大の特徴。失敗するテストを用意し、それを通す最小限の実装を行い、リファクタリングするサイクルを小刻みに繰り返す。よって、プログラムを書く前にテストを記述するエが正解。実務では仕様の明確化と回帰テストの整備を同時に進められ、品質と変更容易性の向上に寄与する。
選択肢ごとの解説
- ア.最初のテストで多くのバグを摘出することを狙う手法ではなく、TDDの特徴を捉えておらず誤り。
- イ.テストケースの改善を繰り返すこと自体はTDD固有の本質ではなく、特徴を表す説明として不適切。
- ウ.カバレージを高めること自体を目的とするのではなく、設計を導くために先にテストを書くのがTDDで誤り。
- エ.実装の前にテストコードを記述する点がTDDの最も特徴的な進め方であり、これが正解。
情報処理安全確保支援士試験 令和3年度春期 午前Ⅱ の過去問一覧へ戻る・問23