ITパスポート試験 / 平成25年度 春期 ITパスポート試験 公開問題 / 問37
certification-simodake-work

平成25年度 春期 ITパスポート試験 公開問題 問37 解説 ホワイトボックステスト

ホワイトボックステストのテストケース作成に関する記述のうち,適切なものはどれか。

  1. ア 入力条件が数値である項目に対して,文字データを設定してテストケースを作成する。
  2. イ 入力データと出力データを関係グラフで表現し,その有効な組合せをテストケースとして作成する。
  3. ウ 人の体重を入力するテストで,上限値を300kg,下限値を500gと設定してテストケースを作成する。
  4. エ プログラムの全ての分岐経路を少なくとも1回実行するようにテストケースを作成する。 ✓ 正答

解説

ホワイトボックステストとは、プログラムのソースコードの内容を理解した上で、内部の論理構造(分岐や繰り返しなど)が正しく動作するかを確認するテスト手法です。設問の判断基準は「テスト対象の内部構造(プログラムの中身)をどれだけ網羅しているか」という点に集約されます。

ホワイトボックステストの考え方

ホワイトボックステストは、プログラムの中身を透明な箱(ホワイトボックス)に見立てて、中の処理が意図した通りに進んでいるかをチェックする手法です。主な網羅基準には以下のものがあります。

  1. 命令網羅:プログラム中のすべての命令を少なくとも1回は実行する
  2. 分岐網羅(判定条件網羅):プログラム中のすべての分岐(if文のYes/Noなど)を少なくとも1回は通るように実行する
  3. 条件網羅:判定条件式内の個々の条件が真・偽となるように実行する

選択肢エの「全ての分岐経路を少なくとも1回実行する」は、まさに分岐網羅の定義そのものです。プログラムの論理的なミス(if文の条件間違いや、特定の条件でしか通らない処理の不具合)を発見するために必須の作業といえます。

誤った選択肢の分析

他の選択肢がなぜホワイトボックステストの適切な説明ではないのかを確認することで、理解を深めましょう。

選択肢アは、あえて誤ったデータ(数値項目に文字を入れる)を入力してシステムの耐性を確認する「異常系テスト」の一種です。これはテストの目的としては重要ですが、内部構造の網羅性を問うホワイトボックステストの定義とは異なります。

選択肢イは「デシジョンテーブルテスト(決定表)」の説明です。入力と出力の関係を整理して漏れなく組み合わせを作る手法であり、これはブラックボックステストの手法に分類されます。

選択肢ウは「境界値分析」に関する記述です。体重300kgを上限、500gを下限とする設定は妥当ですが、この手法自体はプログラムの内部構造よりも、仕様書に基づいた入力範囲の境界チェックを重視するため、ブラックボックステストの考え方に近いです。

なぜこの知識が試験で問われるのか

システム開発において、プログラマーは自分が書いたコードが期待通りに動いているかを確認する必要があります。しかし、単に正常に動いたというだけでは、隠れたバグを見逃してしまう可能性があります。

例えば、エラー処理のif文などは、通常運用ではめったに実行されないコードです。ホワイトボックステストの概念を知っていれば「テストデータがすべての分岐を通っているか」を意識できるようになります。この視点は、単なる試験対策にとどまらず、開発の現場で「テスト漏れ」を防ぐための論理的な思考力を養うために非常に重要です。

参考リンク

学習の記録にははてなブックマーク!

気づいたこと・覚えたことをコメントにメモしよう