連載
バグ検出ドリル(21)「三角形判定」のテスト項目を設計できますか【解答編】:山浦恒央の“くみこみ”な話(121)(2/4 ページ)
バグは至るところに、しかも堂々と潜んでおり、自信満々なプログラマーほど、目の前のバグに気付かないものです。「バグ検出ドリル」の第20回と第21回は、「三角形を判定」するプログラムのテスト項目設計がテーマです。前回の出題編から、今回は解答編になります。
4.解答例(テスト項目)
上記の内容を踏まえ、作成したテスト項目が表3です。
No. | テスト項目 | 辺1, 辺2, 辺3 | 期待結果 | 実行結果 |
---|---|---|---|---|
1 | 辺1、辺2、辺3に整数値が入力でき、出力結果を表示することを確認する | 100, 100, 100 | 正三角形 (3辺の入力が実行でき、結果がコンソールに出力できる) |
正三角形 (コンソール入力実行出来、結果がコンソールに出力された) |
2 | 辺がマイナスの場合は入力エラーとする | -1, 1, 1 | 入力エラー | 入力エラー |
3 | 辺が(最小値-1=0)の場合は入力エラーとする | 0, 1, 2 | 入力エラー | 三角形ではありません |
4 | 前ゼロは入力エラーとする | 01, 1, 1 | 入力エラー | 正三角形 |
5 | 辺が(最大値+1=1000)の場合は入力エラーとする | 1000, 1000, 1000 | 入力エラー | 入力エラー |
6 | 辺1の値が数字以外の場合は、入力エラーとする | @, 3, 4 | 入力エラー | 入力エラー |
7 | 辺1に少数を入力する場合は、入力エラーとする (一般の小数:3.1) |
3.1, 4, 4 | 入力エラー | 入力エラー |
8 | 辺1に少数を入力する場合は、入力エラーとする(境界値:3.0) | 3.0, 4, 4 | 入力エラー | 入力エラー |
9 | 三角形の成立条件が成立しない場合をテストする (一般値:a + b > c) |
90, 40, 20 | 三角形ではありません | 三角形ではありません |
10 | 三角形の成立条件が成立しない場合をテストする (境界値:a + b = c) |
40,50,90 | 三角形ではありません | 不等辺三角形 |
11 | 二等辺三角形が成立することをテストする | 3, 3, 4 | 2等辺三角形 | 二等辺三角形 |
12 | 不等辺三角形が成立することをテストする | 2, 3, 4 | 不等辺三角形 | 不等辺三角形 |
13 | 正三角形が成立することをテストする | 1, 1, 1 | 正三角形 | 正三角形 |
14 | 空白を入力する場合、入力エラーとなる | 空白, 空白, 空白 | 入力エラー | 正三角形 |
15 | 全角数値を入力する場合、入力エラーとなる | 5, 6, 7 | 入力エラー | 入力エラー |
16 | 最大値(999)を正常値として処理する | 999, 998, 997 | 不等辺三角形 | 不等辺三角形 |
表3 テスト項目例 |
表3は、筆者が作成したテスト項目例です。「辺1, 辺2, 辺3」に入力値、「期待結果」に期待する結果、「実行結果」にプログラムの実行結果を表しています。
上記は、筆者が作成したテスト項目例です。あくまで、例ですので、皆さんと違いがあるかと思います。見比べながら考察いただければと思います。
次に、見つかったバグをチェックします。
Copyright © ITmedia, Inc. All Rights Reserved.