125.テストプロセス その⑦
テスト分析では「何をテストするか」を考えました。
ただ何をテストするかを考えただけでは、それをどのようにテストすればいいかは考えられていません。
(何をテストするかだけ考えて、仕様と照らし合わせて確認するだけという現場もたくさん見ました)
テスト設計では、テスト分析で挙げたテストするモノ・コトをどうテストするかを考えていきます。
この時、「テスト技法」を使ってパターンを出していったりします。
例えばマンガに描いたように同値分割法などです。
テスト技法の話は……たぶんそのうちテスターちゃんでも描くかと思います。
きっと。
テスト設計では「ハイレベルテストケース(高位レベルテストケース)」に落としていきます。
ハイレベルテストケースは具体的な値や期待結果を伴わないテストケースです。
マイヤーズの三角形で例えるなら……
(マイヤーズの三角形は3辺の辺の長さを入力すると、それが正三角形か、二等辺三角形か、不等辺三角形か出力するプログラム)
「正三角形と出力されること」を確認するのであれば、「同じ値の自然数を3つ入力する」といった粒度になります。何の数字を入れるかまでは踏み込んでいません。
ちなみに「5を3つ」と具体的になるとローレベルテストケース(低位レベルテストケース)と呼ばれたりします。
あとは、どの仕様のどこの話なのかを明記しておくと良さげです。トレーサビリティ、なんて言ったりします。
仕様変更があった時にパターンを考え直すのが楽になります。特にアジャイルなどで継ぎ足し継ぎ足しで作っていくシステムだと様々な変更が入るので、後々になって助かるヤツだったりします。
テスト技法でのパターン出しの話ばかり書いてしまいましたが、他にも負荷を測る場合は何のツールを使うかといったことなどなど、「どのようにテストするか」全般を決めていくことになります。
テスト技法を学ぶのなら
以下の本をお勧めします。
練習帳でして、例題を解きながらテスト技法を学ぶことができます。
テスト技法を学ぶときは、自分たちが今扱っているシステムならどこに適用するのがよさそうか、ということを考えながら進めると、より力になると思います。