応用情報技術者試験 平成30年秋 午前問49 解説付き過去問
問題
プログラムの誤りの一つに、繰返し処理の終了条件として A≧a とすべきところを A>a とコーディングしたことに起因するものがある。
このような誤りを見つけ出すために有効なテストケース設計技法はどれか。
ここで、Aは変数、aは定数とする。
正解
解説
この問題は、繰り返し処理における終了条件の誤りをテストケース設計技法を用いて検出する方法について問うものです。ここでの誤りは、条件式の不適切な設定によるものです。
- 限界値分析とは
限界値分析は、プログラムの入力値の境界近くで不具合が発生しやすいという特性を活用したテスト設計技法です。この技法は、境界値(またはその直前、直後の値)をテストデータとして選ぶことにより、プログラムのエラーを効率的に検出することが可能です。例えば、終了条件が A≧a の場合、Aが a と等しい時や、aより小さい時にどのように振る舞うかを検証します。 - 他の選択肢との比較
条件網羅はすべての条件分岐をテストする技法で、同値分割は入力データを代表値によって分割し、それぞれのクラスからテストケースを選出する技法です。分岐網羅は、プログラムの各分岐点を少なくとも一度は実行するテストを行う技法です。しかし、これらの技法では、具体的な境界値の誤り(Aとaの関係性に注目した誤り)を特定して検証することには特化していません。
したがって、誤った終了条件の誤りを発見する上で最も適切なテストケース設計技法は「限界値分析」です。この技法により、Aとaの境界値におけるプログラムの挙動を詳細に検証し、誤りを発見することが可能となります。