テスト設計をやる際に必ず押さえておきたいこと

テスト

0. はじめに

テスト計画を基に、テストで確認したいことを具体化してテストケースを作成するプロセスがテスト設計です。

いきなりテストケースは作れません。方針を決めずテストケース作成をしてしまうと、担当者ごとの認識の違いが発生し、ばらつきのある成果物となってしまいます

それを防ぐために、事前にテストケース作成方法を検討・共有する必要があります。
当記事では、テスト設計のポイントをまとめてみました。

1. テストケース作成方針の検討

実装を担当した人がそのままテストケースを記載する場合、既に機能や動作に対する主観が入ってしまい、記載内容が曖昧になったり、観点が漏れていたりすることがよくあります。
それを防ぐために、テストケース作成前にテストケース作成方針を事前に決め、チームで合意することが重要です。

テストケース作成方針の検討では、以下のような要素を決めます。

1-1. テスト範囲

テスト範囲の検討では、テストするところとテストしないところを切り分けます。

修正箇所に影響しない機能などは、この時点てテスト対象から除外します。

1-2. テスト観点

テスト観点の検討では、テストで確認すべきことを決めます。

「テスト範囲」内にあるテストの対象ごとに、何を確認すべきかを決めていきます。

1-3. テスト条件

テスト条件の検討では、テスト観点ごとにテスト条件を決めます。

テスト条件とは、テスト対象の状態や与えるデータ、操作方法といったバリエーションのことです。
スケジュールやコストに制約があるため、全バリエーションのテストは非現実的です。
テスト計画で決めた優先順位を踏まえて網羅する基準を決めます。

2. テストケースの作成方法

テストケースの作成方針が固まったら、テストケース作成に入ります。
テストケースとは、テストの具体的な作業手順や期待結果をまとめたドキュメントです。
テストケース作成方針通りにテストを実行できるようにするためには、以下のような要素が書かれていることが望ましいです。

2-1. テスト観点

テスト観点には、テストで確認したいことを書きます。

テスト観点はそのテストケースの目的・意図が把握できるようにすることが目的です。
こうすると、テスト対象とテスト観点を見れば、大まかなテスト内容を把握でき、テスト実行者やレビュアに伝わりやすくなります。

2-2. テスト条件

テスト条件には、テスト結果に影響を及ぼす要素を書きます。

例えばシステムの状態や入力データ、操作のバリエーションがテスト条件となります。これらの要素について、取りえる値や状態を検討します。
複数のテスト条件が存在する場合は、テスト条件のパターン表を作ると分かりやすくなります。

2-3. テスト手順

テスト手順には、テストで確認すべき結果が出力されるまでの作業手順を書きます。

テスト実施者が誤りなく操作できるようにします。 画面名や項目名などは、仕様書に定義されているものをそのまま使用すると誤解が少なくなります。

2-4. 期待値

期待値には、どのような結果になっていれば合格か(期待される結果) を書きます。

読み手にとって解釈が異ならないように注意する必要があります。
「○○項目に××と表示されていること」といった形で、具体的な項目名や表示内容を具体的に書くのが望ましいです。
よくある駄目な例が、「正しく処理されること」「問題がないこと」といったあいまいな表現です。これでは、人によって解釈が異なってしまう可能性があります。