アドベントカレンダー20日目 ソフトウェアテスト技法ドリル(2)
こんにちは。リリカルです。前回の続きでWACATEの予習です。
WACATE2016 夏 満員御礼!と 予習内容について - WACATEブログ
今回も続いてソフトウェアテスト技法ドリルを読んでいこうと思います。
第1章 点に意識を向ける
ここでは重要なポイントとして二つ挙げられています。それは、「網羅性」と「ピンポイント」です。網羅的な確認もピンポイントな確認も両方大切です。1章では、ピンポイントテストについて説明されています。
ピンポイントテスト(1)怪しい箇所の認識
ここで紹介されているのが「三色ボールペン」による仕様書の読み込みです。赤が「重要」、青が「まあ重要」、緑が「主観的に怪しい」と使い分けるあの手法です。
三色ボールペンを用いて仕様書をチェックしていくわけですが、具体的にどんなところに注意したらいいのか説明されています。
ここでは階乗の計算における入出力を例にとって説明されています。「階乗」という言葉から「大きな数字」「すごく小さな数字」「桁あふれ」「応答時間」とか、いろいろ思いついたことを書き込んでいく様子が書かれています。また、計算に使う数値そのものについても「数値n」→「自然数?」→「0(ゼロ)」などと疑問に思ったことを書き残していきます。ここの発想の広げ方はマインドマップにも通じるものがありますね。
ピンポイントテスト(2)間、対称、類推、外側を考える
ここでは数値nからさらに派生して、他の値をテストできないか考えています。例えば「1」と「2」の間の「1.5」、「5」の対称である「1/5」、数値の外側である「文字」をテストしてみよう、などです。
これは確かに重要なテクニックです。自分もテストデータのバリエーションを考えるときに意識してみようと思います。
ピンポイントテスト(3)意地悪条件を考える
「どうしたらプログラムに負荷をかけられるだろう?」「異常値、特異な値にはどんなものがあるだろう」ということを考えていきます。異常値は想定される入力可能範囲の外の値のこと、特異値は0(ゼロ)など特殊な処理が行われる値のことを指しています。「めちゃくちゃ大きな値」「キーボード操作がめちゃくちゃ」「極端にメモリが少ない時に計算させる」などです。こうした意地悪条件のテストにおいては、「意地悪漢字」とか「意地悪ガイドワード」なども発想の助けとして使うことがあります。
次回も第1章の続きを読んでいきます。