応用情報技術者 2014年 春期 午前2 問48
問題文
プログラムのテストに関する記述のうち、適切なものはどれか。
選択肢
ア:静的テストとは、プログラムを実行することなくテストする手法であり、コード検査、静的解析などがある。(正解)
イ:単体テストでは、スタブから被検査モジュールを呼び出し、被検査モジュールから呼び出されるモジュールの代わりにドライバを使用する。
ウ:トップダウンテストは、仮の下位モジュールとしてのスタブを結合してテストするので、テストの最終段階になるまで全体に関係するような欠陥が発見されにくい。
エ:ブラックボックステストでは、分岐、反復などの内部構造を検証するので、全ての経路を通過するように、テストケースを設定する。
プログラムのテストに関する記述のうち、適切なものはどれか【午前2 解説】
要点まとめ
- 結論:静的テストはプログラムを実行せずにコード検査や静的解析を行う手法であり、これが正しい説明です。
- 根拠:静的テストはソフトウェアの品質向上に不可欠で、実行前に欠陥を発見できるため効率的です。
- 差がつくポイント:動的テストとの違いや、スタブ・ドライバの役割、ブラックボックステストの目的を正確に理解することが重要です。
正解の理由
ア: 静的テストとは、プログラムを実行することなくテストする手法であり、コード検査、静的解析などがある。
静的テストはプログラムの実行を伴わず、ソースコードの構文チェックやコード規約の遵守、静的解析ツールによるバグ検出を行います。これにより早期に問題を発見でき、コスト削減に繋がります。
静的テストはプログラムの実行を伴わず、ソースコードの構文チェックやコード規約の遵守、静的解析ツールによるバグ検出を行います。これにより早期に問題を発見でき、コスト削減に繋がります。
よくある誤解
単体テストでスタブとドライバの役割が逆に理解されることが多いです。ブラックボックステストは内部構造を検証するのではなく、機能仕様に基づくテストです。
解法ステップ
- 各選択肢の用語の意味を正確に理解する。
- 静的テストは「実行しないテスト」であることを確認。
- スタブとドライバの役割を整理する(スタブは下位モジュールの代替、ドライバは上位モジュールの代替)。
- ブラックボックステストは内部構造ではなく外部仕様に基づくことを確認。
- 選択肢を比較し、用語の誤用や説明の誤りを見つける。
選択肢別の誤答解説
- イ: 単体テストでスタブは下位モジュールの代替、ドライバは上位モジュールの代替です。選択肢は逆になっているため誤り。
- ウ: トップダウンテストはスタブを使いますが、欠陥発見が遅れるとは限らず、説明が不正確です。
- エ: ブラックボックステストは内部構造を検証せず、機能仕様に基づくため、内部経路の網羅は目的外です。
補足コラム
静的テストはコードレビューや静的解析ツールを活用し、バグの早期発見に役立ちます。動的テストは実際にプログラムを実行して動作を検証します。スタブとドライバは結合テストで使われ、モジュール間の依存関係を切り離してテストを行うための補助プログラムです。
FAQ
Q: 静的テストと動的テストの違いは何ですか?
A: 静的テストはプログラムを実行せずにコードを検査し、動的テストは実際にプログラムを動かして動作を検証します。
A: 静的テストはプログラムを実行せずにコードを検査し、動的テストは実際にプログラムを動かして動作を検証します。
Q: スタブとドライバの役割はどう違いますか?
A: スタブは下位モジュールの代替、ドライバは上位モジュールの代替として使われます。
A: スタブは下位モジュールの代替、ドライバは上位モジュールの代替として使われます。
関連キーワード: 静的テスト、単体テスト、スタブ、ドライバ、ブラックボックステスト、トップダウンテスト、静的解析、コード検査

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

