ソフトウェアテストにおいて、テストケースの完成度はテスト品質に直結する大切な要素です。しかし、テストケースをどのように書くべきかわからない人も多いのではないでしょうか。
今回はテストケースの書き方を、作成例を交えて項目別に紹介します。テストケースの作成に役立つテンプレートも紹介するため、ぜひ参考にしてみてください。
テストケース/テンプレート
最終的にテスト担当者が使用する形にまとめたものがテストケースです。操作手順や入力パラメータ、そして確認するべき期待結果が項目ごとに明確に具体的に記載されていることが重要です。
- もくじ
1.テストケースとは
テストケースとは、テストをどのように実行するかを整理した項目のことです。テストケースは、テスト実行前の「テスト 設計」という工程で作成します。テスター(テスト実行者)は、テストケースに沿ってテストを実行するため、テスト品質を左右する要素といえます。
テストの実行条件や実行手順のバリエーションに合わせて、適切な数のテストケースの作成が必要です。1つのテストケースには、主に次のような項目を記載します。
項目名 | 概要 |
---|---|
テスト対象 | ソフトウェアのどの部分をテストの対象とするか |
テスト観点 | そのテストケースで何を確認するのか |
実行条件 | そのテストケースを実行するために何が必要か |
実行手順 | 具体的にどのような手順で実行するのか |
期待結果 | どのような挙動や表示であればOK判定となるのか |
こうした項目をテストケースとして落とし込み、テスト文書にまとめます。企業やプロジェクトによってテスト文書の呼び方はさまざまで、記載内容も変わってきます。たとえば、テストケースの詳細を中心に記載する「テストケース仕様書」、テスト環境や機能ごとの重要度なども記載する「テスト設計仕様書」などがあります。
なお、テスト文書には上記項目のほかに「結果判定」「実行日」「実行者」といった結果情報も記載することが一般的です。これらは「テストログ」と呼ばれますが、本記事ではテストケースとは別のものとして扱います。
2.項目別・テストケースの書き方【作成例付き】
ここからは項目別に、作成例やポイントも交えながらテストケースの書き方を紹介します。ただし、企業やチームによってテストケースの書き方は変わってくるため、あくまで参考としてご覧ください。
2-1 テスト対象
テスト対象には、「ソフトウェアのどの部分をテストの対象とするか」を記載します。テスターが、どの機能や画面などをテストすれば良いのかを把握するための項目です。
機能や画面、入力項目など、さまざまな要素があり煩雑になる場合は、大項目・中項目・小項目のように分けると整理しやすくなります。テスト対象の作成例は次のとおりです。
テスト対象 | ||
---|---|---|
大項目 | 中項目 | 小項目 |
アカウント管理機能 | 新規登録画面 | 入力項目:ユーザー名 |
2-2 テスト観点
テスト観点には、「そのテストケースで何を確認するのか」を記載します。テストケースの作成意図や、テスターが実行する際の着眼点を伝えるための項目です。
テスト観点が不明確だと、テスターはただ実行手順を処理するだけになり、確認すべきポイントを見逃しやすくなります。そうならないように、何を確認するのかを端的に記載しましょう。テスト観点の作成例は次のとおりです。
テスト観点 |
---|
重複したユーザー名が登録できないことの確認 |
このように、何を確認したいのかが誰にでも伝わる書き方を心がけましょう。
2-3 実行条件
実行条件には、「そのテストケースを実行するために何が必要か」を記載します。たとえば、使用するテストデータやアカウント、デバイスといった事前準備が必要なものです。テストの実行前に必要な準備作業や前提条件があれば、漏れなく記載しましょう。
また、実行手順のなかで細かい入力内容の設定が発生する場合、実行手順が煩雑になりやすいです。この場合は、入力内容や設定値などを実行条件に記載すると良いでしょう。実行条件の作成例は次のとおりです。
実行条件 |
---|
【前提条件】 【入力内容】 |
上記の例では、別のテストケースがOK判定であることを前提としています。これは、そもそも通常のアカウント登録が正しく行えない場合、重複ユーザー名を確認する意味がなくなるためです。このように、事前の条件を満たしていないとテストケースの存在意義が損なわれるような事柄は漏れなく記載しましょう。
また、ユーザー名の重複登録を実行するにあたって、テストケースNo.1で登録したユーザー名「test1」を活かしている点もポイントです。テストの内容に影響しない範囲であれば、このように別のテストケースを用いて効率化するのも1つの手といえます。
2-4 実行手順
実行手順には、「具体的にどのような手順で実施するのか」を記載します。テスターはこの記載内容に沿ってテストを実行するため、正確な記載が必要です。
不慣れなテスターでもスムーズに実施できるよう、丁寧に記載しなければなりません。たとえばアクセス先のURLを記載したり、仕様どおりの記載に対して仕様書の該当箇所を補足したりすれば、テスターが探す手間が省けます。
実行手順の作成例は次のとおりです。
実行手順 |
---|
①トップページ(https://~)にアクセスする ②画面右上の「アカウント登録」ボタンをクリックする ③アカウント登録画面で、テスト条件【入力内容】の記載どおりに入力する ④画面下部の「登録」ボタンをクリックする |
前述のテスト条件を活用することで、実行条件をシンプルにしています。URLやボタンの位置も記載することで、テスターが迷わずに操作しやすくしている点もポイントです。
2-5 期待結果
期待結果には、「どのような挙動や表示であればOK判定となるのか」を記載します。テスターが実行手順をひと通り行った後に、結果を判定するための項目です。
実行後に期待される挙動や表示を、誰が読んでも誤解が生じないように記載しましょう。テスターによって解釈が変わるような曖昧な表現では、間違った結果判定になる可能性があります。期待結果の作成例は次のとおりです。
期待結果 |
---|
・登録確認画面に遷移せず、アカウント登録画面が表示されたままであること |
・ユーザー名の下部に、赤字で『』内のように表示されること 『ユーザー名"test1"は既に登録されています。』 |
なお、期待結果が複数ある場合はセルを分割することが理想です。1つのセルに複数の期待結果を記載すると、見落としの原因となります。また、「1つ目はOKだが2つ目がNG」といったケースでも、それぞれの期待結果に対する結果判定を記載可能です。
2-6 その他項目
テストケースとは異なりますが、実行結果を記載するテストログの書き方も簡単に紹介します。
結果判定
テストケースの結果を「OK」「NG」などと端的に記載します。実行手順を行った結果が、期待結果と完全に同じであれば「OK」、そうでなければ「NG」です。また、事情があって実行を見送る場合は「保留」や「NT(Not Tested)」などと記載します。ただし、記載方法はプロジェクトによってさまざまです。認識違いのトラブルが多い項目のため、テスト計画段階からステークホルダ間で十分に認識をそろえるようにしましょう。
実行日
実行した日付を「2023/1/23」のように記載します。
実行者
テストケースを実行した担当者名を記載します。「田中」のように苗字だけの場合もありますが、メンバーを区別できない場合は下の名前や部署名なども記載しましょう。
備考
テストで使ったアカウント情報や申し送り事項、不具合票の番号など、テスト実行結果を後から確認する際に必要な情報を記載しましょう。
3.テストケースを書く際の4つのポイント
いくつかのポイントを押さえることで、テストケースの品質を向上できます。テストケースを書く際のポイントとして、次の4つを押さえておきましょう。
3-1 できる限り具体性を持たせる
できる限り具体性を持たせましょう。具体性がないとテスターによって判断が変わってしまいます。たとえば、期待結果に「正しいこと」と記載しても、具体的に何が正しいのか判断できません。このように、テスターの自己判断に委ねられる表現は避けましょう。誰がやっても同じ結果が得られるようなテストケースを目指します。
3-2 作成の意図がわかる表現を心がける
そのテストケースをなぜ作成したのか、意図がわかる表現を心がけましょう。たとえば、「ユーザー名の入力チェック」というテスト観点のテストケースが多数あり、入力項目だけ変えるのは良くありません。入力チェックにも「未入力」や「文字数超過」など多くのバリエーションが存在します。こうした情報を丁寧に記載することで、意図が伝わりやすくなるでしょう。
3-3 項目ごとの役割を混同しない
項目ごとの役割を混同しないように注意が必要です。たとえば、実行手順のなかに前提条件が含まれていると、テスターは途中で条件の不足に気付くことになってしまいます。イレギュラーな書き方は、テスターが見落としたり混乱したりするもとになるため、避けるべきです。どの項目に何を書くべきかを把握し、適切な書き分けを心がけましょう。
3-4 トレーサビリティを確保する
「トレーサビリティ(追跡可能性)」を確保することも重要です。トレーサビリティとは、要素と要素を紐づけ、別の工程や文書を参照できるようにすることです。具体的には、各テストケースに関連する仕様書や設計書、エビデンスなどのパスやリンクを添えると良いでしょう。そうすることで、テストケースから設計情報やテスト結果などを参照しやすくなります。
4.テストケースを効率的に作成する方法【テンプレート付き】
テストケースを効率的に作成したい場合、テンプレートを活用するのがおすすめです。テンプレートには、テストケースに必要な項目が網羅されており、OK件数・NG件数などの集計機能もあります。テンプレートに沿って記載することで、慣れていないテスト設計担当者でも迷わずにテストケースを作成できるでしょう。
Qbookでは、テストケースの作成効率を高めるテンプレートを無料で提供しています。
テストケース/テンプレート
最終的にテスト担当者が使用する形にまとめたものがテストケースです。操作手順や入力パラメータ、そして確認するべき期待結果が項目ごとに明確に具体的に記載されていることが重要です。
まとめ:テストケースの書き方を知り、テスト品質を向上させよう
テストケースとは、テストをどのように実行するかを整理した項目のことです。
テストケースにはテスト対象やテスト観点、実行条件、実行手順、期待結果などを記載します。テスターがテストを実行する際のもととなるため、正確に記載することが大切です。
正しい書き方でテストケースを作成することは、テスト品質の向上につながります。テストケースを作成する際には、本記事で紹介した書き方のポイントを参考にしてください。