WRブログ

テストの設計の仕方

テストの設計の仕方

テストを実施するうえで大切になってくるのが、テスト対象に「どんなテスト」を「どんな手段」でおこなうのか、という「テストの設計」です。
必要としている結果を得るためにはこの工程がとても重要です。
今回は、テストの設計において重要なことをご紹介します。

■テストベースを考える
テストベースとは、テストケースの素材となる、テスト対象の性質や品質、特徴などを記したものを指します。
例えば、要件や、アーキテクチャ、設計、インターフェース仕様など、さまざまなものがあります。
多くのテストベースの中から情報をまとめたり、不足しているものを足したりして、テストケースを作ります。
■テスト容易性を考える
テストベースが決まったら、次にテストケースの実現性を検討します。
たとえば、「使いやすさ」「見やすさ」といったことを検証する場合、テスト担当者の主観に左右されるため、評価基準があいまいです。
これは、テストの容易性が低いと言えます。
そのため定量的な評価に置き換えるテスト設計が必要になります。
たとえば、「使いやすさ」を「処理結果を返す速度」としたり、「見やすさ」を「ボタンの表示サイズを◯◯以上にする」としたりすることです。
■テスト条件を明確にし、優先順位をつける
ここまでの作業で、テストで検証するべき条件や要件が見えてきたと思います。
次は、それを明確にしていきます。
たとえばテストの環境的リソースは十分か、テストに割ける人員はどれくらいか、またそのためのスキルセットは揃っているか、それらを含めた期限はいつまでなのか、などを明確にしていくことで、テスト条件が揃います。
そしたら、今回のテストの目的に沿うように、テスト条件に優先順位をつけます。
■高度なテストケースを設計する
テストベース、テスト条件などが揃ったら、いよいよテスト設計をおこないます。
テスト設計は、最初からテストの手順や、期待される結果などの詳細な部分から考えるのではなく、テスト条件を網羅するように設計していきます。
このように抽象度の高いテストケースのことを「高度なテストケース」といいます。
■テスト環境の設計
テスト実施に必要な環境は、物理的な側面と論理的な側面から考える必要があります。
たとえば、サーバー構成でテスト環境と本番環境を、同じサーバー上に置くかどうか、などを考えます。
このとき、テストに必要なテストツールの洗い出しなどもおこないます。
■トレーサビリティ(追跡可能性)を作成する
トレーサビリティとは、システムの各モジュールが、システム内にどのように組み込まれているかが、簡単に追跡できることであり、これは仕様書や設計書などの文書にも当てはまります。

トレーサビリティが確保できている状態であれば、仕様書や設計書に変更があったとしても、テストでの変更点がすぐに判断でき、致命的な欠陥の抜け漏れを防ぐことができます。

★まとめ
●テスト設計に必要な情報を集める
●テスト設計の方法
●トレーサビリティの重要性

ここまでで、テスト設計の方法について解説してきました。
製品の品質を支える、テストには準備やその後の保守性を意識した設計が必要です。


【参考文献】:
『ソフトウェアテスト教科書 JSTQB Foundation 第3版』

【参考URL】:
http://www.itmedia.co.jp/im/articles/1111/07/news172.html,(参照 2016年7月30日)
http://gihyo.jp/dev/serial/01/test_newface/0003,(参照 2016年7月30日)
http://www.itmedia.co.jp/im/articles/0802/07/news141.html,(参照 2016年7月30日)
http://www.ipa.go.jp/files/000004550.pdf,(参照 2016年7月30日)