ichikawaです。昨日までの雨と寒さが嘘のように今日は暑いです。
私はこの季節の香りが好きで、入学式とか新生活を思い出します。
中学とか高校の入学時は、最初は周りが知らない人ばかりで、どのクラス誰がかわいいとか美人とかそんなことばっかり話していたあの頃が懐かしいです。それが最近ついに「おっさん」と呼ばれました。おっさんですよ。失礼な。
青春を忘れたくないです。青春は人生の宝です。
さて、今日はソフトェアテスト。
第2回目の今日は、前回の授業の三角形の課題の、より最適なテストの仕方を学びました。
前回の課題はこちら。
startup.dino.co.jp/2008/05/09/softwaretest/
この前回の課題に、ブラックボックステストの同値分割、境界値分析という考えと加えて、またテストを組んでみました。
ブラックボックステスト、同値分割、境界値分析について。今日の授業の資料です。
2008/05/15ソフトウェアテスト資料
同値分割はエラーを出すべきであるものをまとめ、その代表値を入力してテストを行うものです。
境界値分析とは、異常と正常が出る境界の値を入力することで、最適なテストをします。
この資料と授業内容を元にテストの内容を考えてみた最初の結果が以下です。
ichikawaの考えるソフトウェアテスト
数値入力が左側に示されているもので、それぞれ三辺の長さの値を入力します。
| 入力内容 | 期待値 | 備考 |
|---|---|---|
| 同値分割 | ||
| 1 1 @ | 半角数字以外の文字は受け付けません | 記号入力 |
| 1 1 a | 半角数字以外の文字は受け付けません | 英語入力 |
| 1 1 ア | 半角数字以外の文字は受け付けません | 片仮名入力 |
| 1 1 1 | 半角数字以外の文字は受け付けません | 全角数字入力 |
| 1.1 3 4 | 1~100の整数を入力してください | 小数入力 |
| 境界値分析 | ||
| 1 1 1 | 正三角形 | |
| 100 100 100 | 正三角形 | |
| 101 100 100 | 1~100の整数を入力してください | |
| 中程の数値 | ||
| 50 50 50 | 正三角形 | |
| 二等辺三角形のテスト | ||
| 1 1 4 | 二等辺三角形 | |
| 1 4 1 | 二等辺三角形 | 辺の位置を替えてテスト |
| 4 1 1 | 二等辺三角形 | 同様に辺の位置を替える |
| ただの三角形のテスト | ||
| 4 5 3 | ただの三角形 | |
| 0のテスト | ||
| 1 3 0 | 1~100の整数を入力してください | |
| 1 0 3 | 1~100の整数を入力してください | 辺の位置を替えてテスト |
| 0 1 3 | 1~100の整数を入力してください | 同様に辺の位置を替える |
| マイナスの値のテスト | ||
| -1 3 6 | 1~100の整数を入力してください | |
| 4つ以上の数値を入力 | ||
| 2 4 5 8 | 因数が違います | |
| 三角形の定義から外れる場合のテスト | ||
| 1 2 3 | 因数が違います | |
以上
前回よりも分かりやすくなりました。
特に境界値を入力することはとても重要なことだと思うのです。
この場合200を入力してエラーが出ても、150がエラーとならないかもしれません。
ですので、100と101を入力して結果を確かめることで、おそらく101以上のすべての数字はエラーを返すだろうと予測されます。
さてここで提出したところ、いくつかご指摘をいただきました。
- 修正箇所
-
- @とa、両方を確かめる必要性は低い
- 片仮名と大文字数字入力両方を確かめる必要性は低い(どちらかをテストするなら、大文字数字で、入力する可能性がこちらのほうが高いためである。)
- 3辺の値を入力する際、どの変にも異常がないか同時に確かめるために、異常値を入力する箇所をずらしたほうが良い。
- 「中程の数値」はそれほど必要なし(境界値で正常、異常を確認しているため)
- 二等辺三角形のテスト数値が間違っている((1 1 4)などは三角形として成り立たない)
- 数値が未記入の場合のテストもしたほうが良い
- 「因数」× → 「引数」○ ( ̄Д ̄;)!!
以上の事柄をふまえ、修正したものがこちら。
ソフトウェアテスト修正版
同値分割、各入力によるバグ
| 入力内容 | 期待値 | 備考 |
|---|---|---|
| 同値分割 | ||
| 1 1 a | 半角数字以外の文字は受け付けません | 英語入力 |
| 1 1 1 | 半角数字以外の文字は受け付けません | 全角数字入力 |
| 1.1 3 4 | 1~100の整数を入力してください | 小数入力 |
| 境界値分析 | ||
| 1 1 1 | 正三角形 | |
| 100 100 100 | 正三角形 | |
| 101 100 100 | 1~100の整数を入力してください | |
| 二等辺三角形のテスト | ||
| 3 3 4 | 二等辺三角形 | |
| 3 4 3 | 二等辺三角形 | 辺の位置を替えてテスト |
| 4 3 3 | 二等辺三角形 | 同様に辺の位置を替える |
| ただの三角形のテスト | ||
| 4 5 3 | ただの三角形 | |
| 0のテスト | ||
| 1 3 0 | 1~100の整数を入力してください | |
| 1 0 3 | 1~100の整数を入力してください | 辺の位置を替えてテスト |
| 0 1 3 | 1~100の整数を入力してください | 同様に辺の位置を替える |
| マイナスの値のテスト | ||
| -1 3 6 | 1~100の整数を入力してください | |
| 4つ以上の数値を入力 | ||
| 2 4 5 8 | 引数が違います | |
| 2つ以下の数値を入力 | ||
| 2 3 | 引数が違います | 未記入の場合、エラーを返すかテスト |
| 三角形の定義から外れる場合のテスト | ||
| 1 2 3 | 引数が違います | |
以上
必要なものを取りいれ、あまり必要でないものを削除しました。
すっきりしましたね。
本日学んだことは以上です。
テストは、隅から隅まで確かめようとするとキリがないので、正常、異常を判断する上で最適であるテストをピックアップしなければならないことがよく分かりました。

by スタートアップ研修記 » ソフトウェアテスト#3 ホワイトボックステスト, on 05.22.08 @ 6:15 PM
[...] この前習ったブラックボックステスト(ソフトウェアテスト#2 ブラックボックステスト)は、単体テスト、統合テスト、システムテストにおいて使われます。今回、習うホワイトボックステストは単体テストに使います。 [...]