応用情報技術者 2014年 秋期 午前2 問48
問題文
回帰テスト (リグレッションテスト)の説明として、適切なものはどれか。
選択肢
ア:新規に作成したプログラムの各モジュールの誤りを検出するためのテストである。
イ:プログラムを修正したことによって、想定外の影響が出ていないかどうかを確認するためのテストである。(正解)
ウ:ホワイトボックステストに限定して、単体モジュールの誤りを検出するためのテストである。
エ:毎回、テストケースとテストデータを、作り直して行うテストである。
回帰テスト (リグレッションテスト)の説明【午前2 解説】
要点まとめ
- 結論:回帰テストはプログラム修正後に既存機能が影響を受けていないか確認するテストです。
- 根拠:修正による副作用や不具合の再発を防ぐため、既存の動作が正しいかを検証します。
- 差がつくポイント:新規開発の誤り検出ではなく、修正後の影響範囲の確認に特化している点を理解しましょう。
正解の理由
イは「プログラムを修正したことによって、想定外の影響が出ていないかどうかを確認するためのテスト」とあり、回帰テストの本質を正確に表現しています。修正後の既存機能の動作確認が目的であり、これにより不具合の再発や新たな問題の発生を防止します。
よくある誤解
回帰テストは新規モジュールの誤り検出やホワイトボックステストに限定されるものではありません。既存機能の影響確認が主目的です。
解法ステップ
- 回帰テストの目的を「修正後の影響確認」と理解する。
- 選択肢の説明が「新規誤り検出」か「修正影響確認」かを区別する。
- 「修正による想定外の影響確認」と明記されている選択肢を選ぶ。
- 他の選択肢が回帰テストの定義と異なる点を確認する。
選択肢別の誤答解説
- ア: 新規モジュールの誤り検出は単体テストや結合テストの役割であり、回帰テストの目的ではありません。
- ウ: ホワイトボックステストに限定する説明は誤りで、回帰テストはブラックボックス・ホワイトボックス両方で行われます。
- エ: 毎回テストケースを作り直す必要はなく、既存のテストケースを再利用して影響範囲を検証します。
補足コラム
回帰テストはソフトウェア保守の重要な工程であり、自動化ツールを用いて効率化されることが多いです。CI/CD環境ではコード修正時に自動で回帰テストが実行され、品質維持に貢献しています。
FAQ
Q: 回帰テストはどの段階で実施しますか?
A: プログラム修正後、リリース前に既存機能の動作確認として実施します。
A: プログラム修正後、リリース前に既存機能の動作確認として実施します。
Q: 回帰テストと単体テストの違いは何ですか?
A: 単体テストは新規モジュールの誤り検出が目的、回帰テストは修正後の既存機能の影響確認が目的です。
A: 単体テストは新規モジュールの誤り検出が目的、回帰テストは修正後の既存機能の影響確認が目的です。
関連キーワード: 回帰テスト、リグレッションテスト、ソフトウェアテスト、保守テスト、自動テスト

\ せっかくなら /
応用情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

