平成22年 秋期 ITパスポート 中問A

ソフトウェアのテストに関する次の記述を読んで、問89〜92に答えよ。

Mさんは、総務課のNさんから宅配荷物の発送業務で利用する料金計算プログラム(以下、プログラム)の作成を依頼された。
そこれ、Nさんから聞いた料金計算の方法を基に次のように要件をまとめ、プログラムを作成した。

(1)  料金はサイズ区分と発送先の地区から表1の料金法で求める。
サイズ区分は荷物の3辺計(荷物の縦、横、高さの長さの合計で1cm単位)と重量(1kg単位)を比較し、どちらか大きい方の区分を適用する。
なお、3辺計が140cm又は重量が20kgを超える荷物は受け付けない。
(2)  荷物の3辺計と重量、発送先の地区(A〜D)を入力すると、料金を出力する。

表1 料金表 単位 円
サイズ区分 地区
区分 3辺計(cm) 重量(kg) 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

Mさんは、プログラムをNさんに引き渡す前にテストを行うことにした。
テストに当たり、表2の出力結果表を作成し、これに基づいてテストデータを準備した。
表2は、入力データが各列に示すYesの組合せに該当する値であるときの正しい出力を、欄“予想出力”に記入したものである。

表2 出力結果
1 2 3 4 5 6 36
地区 A Yes Yes Yes Yes Yes Yes
B






C






D





Yes
3辺計(cm) 80まで Yes Yes Yes



100まで


Yes Yes Yes
140まで





Yes
重量(kg) 5まで Yes

Yes


10まで
Yes

Yes

20まで

Yes

Yes Yes
予想出力(円)

 a 



注 網掛けの部分は、表示していない。
b

c

[マネジメント]
 問89  Mさんがプログラムのテストに使うデータを準備するために表2の出力結果表を作成した理由として、適切なものはどれか。

 ア  処理の間違いが起こりそうなケースを洗い出して、そケースのテストデータを準備し、プログラムの信頼性のテストを行うため。
 イ  プログラムに記述されている命令の実行順序を追跡するためのテストデータを準備し、設計どおりの順序で命令が実行されるかをテストするため。
 ウ  要件から考えられるケースの中から、発生頻度の高そうなケースを選んでテストデータを準備し、少ないテストデータで効率的にテストを行うため。
 エ  要件から考えられるケースを網羅するテストデータを準備し、すべてのケースを漏れなくテストするため。

[ストラテジ]
 問90  表2の出力結果aに入る予想出力はどれか。

 ア  1,300  イ  1,600  ウ  2,000  エ  3,400

[マネジメント]
 問91  次の表は、テストデータ(地区、3辺計、重量)を用いて実際にテストを行った結果の一部である。
この結果の判断として、適切なものはどれか。

テストデータ 出力結果
地区 3辺計(cm) 重量(kg)
C 60 5 1,400
C 101 8 1,800
D 60 5 2,350
D 101 8 3,400

 ア  3辺計が60cmで重量が5kgのとき出力結果に誤りがある。
 イ  サイズ区分が区分3のとき出力結果に誤りがある。
 ウ  出力結果に誤りはない。
 エ  地区Cの出力結果だけに誤りがある。

[マネジメント]
 問92  表2の出力結果でb、cで示すそれぞれの列のテストデータ(地区、3辺計、重量)の組合せとして、適切なものはどれか。

b列のテストデータ c列のテストデータ
A、80、10 A、80、20
A、90、10 A、90、11
A、90、11 A、90、21
A、100、5 A、100、10


答え 問89 エ 問90 ウ 問91 ア 問92 イ


解説

 問89  表1から料金を決める条件は地区が4種類、3辺計が3種類、重量が3種類あるので、条件の組合せ数はそれぞれの積になるので、4×3×3=36であり、これは表2のテストケースの数と同じである。
したがって、表2は要件から考えられるケースを網羅するテストデータを準備し、すべてのケースを漏れなくテストするため(エ)になっている。
 問90  aのテストは地区A、3辺計80cmまで、重量20kg(A、80、20)までで、この条件のときの料金を表1から求めると2,000円(ウ)になる。
 問91  この表のテスト結果を表1を使って確認すると、
  • 1行目の(C、60、5)は、表1では1,150円であるが、テスト結果は1,400円になっているので誤っている。
  • 2行目の(C、101、8)は、表1では1,800円であり、テスト結果も1,400円になっていて正しい。
  • 3行目の(D、60、5)は、表1では1,800円であるが、テスト結果は2,350円になっているので誤っている。
  • 4行目の(D、101、8)は、表1では3,400円であり、テスト結果も3,400円になっていて正しい。
したがって、3辺計が60cmで重量が5kgのとき出力結果に誤りがある。(ア)
※要件(1)の『3辺計と重量を比較し、どちらか大きい方の区分を適用する』に注意する。
 問92  b列は地区A、3辺計100cmまで、重量10kgまでのテストで、c列は地区A、3辺計100cmまで、重量20kgまでのテストなので、この条件を満足するのは
b列のテストデータ c列のテストデータ
A、90、10 A、90、11
である。
※要件(1)の『3辺計と重量を比較し、どちらか大きい方の区分を適用する』に注意する。


戻る 一覧へ 次へ