戦国IT - 情報処理技術者試験の過去問対策サイト
お知らせお問い合わせ料金プラン

データベーススペシャリスト 2018年 午前225


問題文

エクストリームプログラミング(XP: eXtreme Programming)における“テスト駆動開発”の特徴はどれか。

選択肢

最初のテストで、なるべく多くのバグを摘出する。
テストケースの改善を繰り返す。
テストでのカバレージを高めることを重視する。
プログラムを書く前にテストケースを作成する。(正解)

エクストリームプログラミング(XP)における“テスト駆動開発”の特徴はどれか【午前2 解説】

要点まとめ

  • 結論:テスト駆動開発(TDD)は「プログラムを書く前にテストケースを作成する」ことが特徴です。
  • 根拠:XPのTDDは、まず失敗するテストを書くことで設計を明確にし、その後コードを書いてテストをパスさせる反復的手法です。
  • 差がつくポイント:テストを後から追加するのではなく、先にテストを書く点が他のテスト手法と大きく異なり、品質向上に直結します。

正解の理由

選択肢エ「プログラムを書く前にテストケースを作成する」が正解です。
XPのテスト駆動開発は「Red-Green-Refactor」のサイクルを回し、まず失敗するテストを書く(Red)、次にそのテストを通すためのコードを書く(Green)、最後にコードを改善する(Refactor)という流れを重視します。これにより設計が明確になり、バグの早期発見と高品質なコードが実現します。

よくある誤解

テスト駆動開発は単にテストケースを増やすことやカバレッジを高めることではなく、テストを先行させることで設計と実装を同時に進める手法です。

解法ステップ

  1. XPの基本理念とテスト駆動開発の定義を理解する。
  2. TDDの特徴として「テストを先に書く」ことを確認する。
  3. 選択肢を比較し、テストのタイミングに注目する。
  4. 「プログラムを書く前にテストを書く」ことがTDDの本質であると判断する。
  5. 正解を選択肢エと確定する。

選択肢別の誤答解説

  • ア: 最初のテストで多くのバグを摘出することは重要だが、TDDの特徴ではなく一般的なテストの目的です。
  • イ: テストケースの改善は行うが、TDDの本質はテストを先に書くことにあります。
  • ウ: カバレッジを高めることは品質向上に役立つが、TDDの特徴ではなくテスト全般の指標です。
  • エ: プログラムを書く前にテストケースを作成することがTDDの核心であり、正解です。

補足コラム

テスト駆動開発はXPの中でも特に品質保証と設計改善に効果的なプラクティスです。テストを先に書くことで、コードの目的が明確になり、リファクタリングも安全に行えます。また、TDDは単体テストの自動化と密接に関連し、継続的インテグレーション(CI)との相性も良いです。

FAQ

Q: テスト駆動開発はどのように品質向上に寄与しますか?
A: 先にテストを書くことで設計が明確になり、バグの早期発見とコードの保守性向上につながります。
Q: TDDはどのようなサイクルで進めますか?
A: 「Red(失敗するテストを書く)→Green(テストを通すコードを書く)→Refactor(コードを改善)」の3段階を繰り返します。

関連キーワード: テスト駆動開発、XP, Red-Green-Refactor, 単体テスト、自動テスト、継続的インテグレーション
← 前の問題へ次の問題へ →
戦国ITクイズ機能

\ せっかくなら /

データベーススペシャリスト
クイズ形式で学習しませんか?

クイズ画面へ遷移する

すぐに利用可能!

©︎2026 情報処理技術者試験対策アプリ

このサイトについてプライバシーポリシー利用規約特商法表記開発者について