必要としている結果を得るためにはこの工程がとても重要です。
今回は、テストの設計において重要なことをご紹介します。
■テストベースを考える
テストベースとは、テストケースの素材となる、テスト対象の性質や品質、特徴などを記したものを指します。例えば、要件や、アーキテクチャ、設計、インターフェース仕様など、さまざまなものがあります。
多くのテストベースの中から情報をまとめたり、不足しているものを足したりして、テストケースを作ります。
■テスト容易性を考える
テストベースが決まったら、次にテストケースの実現性を検討します。たとえば、「使いやすさ」「見やすさ」といったことを検証する場合、テスト担当者の主観に左右されるため、評価基準があいまいです。
これは、テストの容易性が低いと言えます。
そのため定量的な評価に置き換えるテスト設計が必要になります。
たとえば、「使いやすさ」を「処理結果を返す速度」としたり、「見やすさ」を「ボタンの表示サイズを◯◯以上にする」としたりすることです。
■テスト条件を明確にし、優先順位をつける
ここまでの作業で、テストで検証するべき条件や要件が見えてきたと思います。次は、それを明確にしていきます。
たとえばテストの環境的リソースは十分か、テストに割ける人員はどれくらいか、またそのためのスキルセットは揃っているか、それらを含めた期限はいつまでなのか、などを明確にしていくことで、テスト条件が揃います。
そしたら、今回のテストの目的に沿うように、テスト条件に優先順位をつけます。
■高度なテストケースを設計する
テストベース、テスト条件などが揃ったら、いよいよテスト設計をおこないます。テスト設計は、最初からテストの手順や、期待される結果などの詳細な部分から考えるのではなく、テスト条件を網羅するように設計していきます。
このように抽象度の高いテストケースのことを「高度なテストケース」といいます。
■テスト環境の設計
テスト実施に必要な環境は、物理的な側面と論理的な側面から考える必要があります。たとえば、サーバー構成でテスト環境と本番環境を、同じサーバー上に置くかどうか、などを考えます。
このとき、テストに必要なテストツールの洗い出しなどもおこないます。
■トレーサビリティ(追跡可能性)を作成する
トレーサビリティとは、システムの各モジュールが、システム内にどのように組み込まれているかが、簡単に追跡できることであり、これは仕様書や設計書などの文書にも当てはまります。トレーサビリティが確保できている状態であれば、仕様書や設計書に変更があったとしても、テストでの変更点がすぐに判断でき、致命的な欠陥の抜け漏れを防ぐことができます。
★まとめ
●テスト設計に必要な情報を集める●テスト設計の方法
●トレーサビリティの重要性
ここまでで、テスト設計の方法について解説してきました。
製品の品質を支える、テストには準備やその後の保守性を意識した設計が必要です。
【参考文献】:
『ソフトウェアテスト教科書 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日)