ITパスポート 平成22年度 秋期 問89
システム開発技術
ブラックボックステストの問題
〔中問A・ソフトウェアのテスト〕〔マネジメント〕M さんがプログラムのテストに使うデータを準備するために表 2 の出力結果表を作成した理由として,適切なものはどれか。
〔中問A の記述(抜粋・再掲)〕M さんは,総務課の N さんから宅配荷物の発送業務で利用する料金計算プログラム(以下,プログラムという)の作成を依頼された。
1. 料金はサイズ区分と発送先の地区から表 1 の料金表で求める。サイズ区分は荷物の 3 辺計(荷物の縦,横,高さの長さの合計で 1 cm 単位)と重量(1 kg 単位)を比較し,どちらか大きい方の区分を適用する。なお,3 辺計が 140 cm 又は重量が 20 kg を超える荷物は受け付けない。
2. 荷物の 3 辺計と重量,発送先の地区(A 〜 D)を入力すると,料金を出力する。
M さんは,テストに当たり表 2 の出力結果表を作成し,これに基づいてテストデータを準備した。表 2 は,入力データが各列に示す Yes の組合せに該当する値であるときの正しい出力を,欄 “予想出力” に記入したものである。
〔表1 料金表〕単位 円
| 区分 | 3 辺計 | 重量 | 地区 A | 地区 B | 地区 C | 地区 D |
|---|---|---|---|---|---|---|
| 1 | 80 まで | 5 まで | 1,300 | 950 | 1,150 | 1,800 |
| 2 | 100 まで | 10 まで | 1,600 | 1,200 | 1,400 | 2,350 |
| 3 | 140 まで | 20 まで | 2,000 | 1,600 | 1,800 | 3,400 |
〔表2 出力結果表〕書き起こしたもの(原典は列 1 〜 36 まであり,網掛けの部分は表示していない)
| 区分 | 項目 | 1 | 2 | 3 | 4 | 5 | 6 | … | 36 |
|---|---|---|---|---|---|---|---|---|---|
| 地区 | A | Yes | Yes | Yes | Yes | Yes | Yes | … | |
| 地区 | B | … | |||||||
| 地区 | C | … | |||||||
| 地区 | D | … | Yes | ||||||
| 3 辺計(cm) | 80 まで | Yes | Yes | Yes | … | ||||
| 3 辺計(cm) | 100 まで | Yes | Yes | Yes | … | ||||
| 3 辺計(cm) | 140 まで | … | Yes | ||||||
| 重量(kg) | 5 まで | Yes | Yes | … | |||||
| 重量(kg) | 10 まで | Yes | Yes | … | |||||
| 重量(kg) | 20 まで | Yes | Yes | … | Yes | ||||
| 予想出力(円) | 網 | 網 | a | 網 | 網 | 網 | … | 網 |
注記 「網」と書いた部分は,原典では網掛けで表示していない箇所である。列 5 と列 6 には,それぞれ b・c の印が付いている。
- ア 処理の間違いが起こりそうなケースを洗い出して,そのケースのテストデータを準備し,プログラムの信頼性のテストを行うため。
- イ プログラムに記述されている命令の実行順序を追跡するためのテストデータを準備し,設計どおりの順序で命令が実行されるかどうかをテストするため。
- ウ 要件から考えられるケースの中から,発生頻度の高そうなケースを選んでテストデータを準備し,少ないテストデータで効率的にテストを行うため。
- エ 要件から考えられるケースを網羅するテストデータを準備し,すべてのケースを漏れなくテストするため。
答えと解説
✓ これが正解エ 要件から考えられるケースを網羅するテストデータを準備し,すべてのケースを漏れなくテストするため。
解説
組合せを全部並べた表なので、漏れなくテストするためです。
表 2 を作った理由は、列の数が語っています。まず、テストケースの列がいくつ並んでいるかを数えます。地区は四つ、三辺計は三つ、重量も三つです。掛け合わせると三十六通りになります。表の見出しも、三十六まで並んでいます。つまり、すべての組合せを並べた形です。よって、ケースを網羅して漏れなくテストするためだと述べた肢が正解です。間違いが起こりそうなケースを洗い出す肢は、絞り込むやり方です。発生頻度の高いケースを選ぶ肢も、数を減らすやり方です。どちらも、すべてを並べる形とは向きが逆です。命令の実行順序を追う肢は、プログラムの中を見るホワイトボックステストです。この表は、入力と出力だけで作られています。中の作りを見ていないので、ブラックボックステストの設計に当たります。シラバスも、ブラックボックステストを開発の用語として挙げています。
ほかの選択肢の解説
- ア 処理の間違いが起こりそうなケースを洗い出して,そのケースのテストデータを準備し,プログラムの信頼性のテストを行うため。:処理の間違いが起こりそうなケースだけを洗い出すやり方です。危ういところに力を注ぐので、限られた時間では理にかないます。ところが表 2 は、三十六通りの組合せを全部並べています。絞り込んではいません。
- イ プログラムに記述されている命令の実行順序を追跡するためのテストデータを準備し,設計どおりの順序で命令が実行されるかどうかをテストするため。:命令の実行順序を追跡するテストは、ホワイトボックステストに当たります。設計どおりの順で命令が動くかを、プログラムの内部を見て確かめます。けれども表 2 は入力と出力の組合せだけで、内部の作りを見ていません。
- ウ …の中から,発生頻度の高そうなケースを選んでテストデータを準備し,少ないテストデータで効率的にテストを行うため。:発生頻度の高そうなケースを選んで、少ないテストデータで効率よく試すやり方です。ところが表 2 は、起こりやすさでケースを選んでいません。三十六通りがそのまま並び、数を減らしていないので、網羅とは向きが逆です。
関連用語
- ブラックボックステスト中の作りを見ずに、入れる値と出てくる結果だけで仕様のとおりかを確かめるテストです。
- テスト決めたとおりに動くかを、実際に動かして確かめる作業のこと。
- 組合せいくつかの中から、向きや順を区別せずに何個かを選ぶ選び方の数です。
- 信頼性意図した動きと実際の結果が食い違わない度合い。
出典:平成22年度 秋期 ITパスポート試験 問89(改変:原典の図表をテキストに書き起こした)
解説は当サイト独自のもので、IPA(独立行政法人情報処理推進機構)とは関係ありません。
関連問題
- 平成26年度 秋期 (特別措置試験) 問44
(ブラックボックステスト) - 令和4年度 問45:
ブラックボックステストの 問題 (ブラックボックステスト) - 平成30年度 秋期 (特別措置試験) 問44:
ホワイトボックステストの 問題 (ブラックボックステスト) - 平成26年度 春期 (特別措置試験) 問35:
ブラックボックステストの 問題 (ブラックボックステスト) - 平成26年度 春期 (特別措置試験) 問34
(ブラックボックステスト)
同じ分野の問題
誤りを見つけたら報告する