テストケースの読み方
ストーリー
「テスト手順書を渡すから、この通りにテストしてね」
「はい...(テストID?前提条件?期待結果?これは何?)」
「読み方がわからない?じゃあ、テストケースの構造から説明するね」
テストケースとは
テストケースとは、テストの手順と期待する結果をまとめたものです。
「何を」「どうやって」テストし、「どうなれば合格か」を明確にします。
テストケースの構成要素
テストケースは以下の要素で構成されます。
| 要素 | 説明 | 例 |
|---|---|---|
| テストID | テストケースの識別番号 | TC-LOGIN-001 |
| テスト名 | テストの内容を簡潔に表す名前 | 正常なログイン |
| 前提条件 | テスト実行前に満たすべき状態 | ユーザーが登録済みであること |
| 手順 | テストの実行手順(番号付き) | 1. ログインページを開く... |
| 期待結果 | 正常時に起きるべき結果 | ダッシュボードが表示される |
| 実際結果 | 実行して実際に起きた結果 | (テスト実行時に記入) |
| 合否 | テストの合否判定 | PASS / FAIL |
テストケースの具体例
例1: ログイン機能のテストケース
テストID: TC-LOGIN-001
テスト名: 正しいメールアドレスとパスワードでログインできる
前提条件:
- テストユーザーが登録済み(email: test@example.com, password: Test1234)
- ログアウト状態であること
手順:
1. ブラウザで https://example.com/login を開く
2. メールアドレス欄に「test@example.com」を入力する
3. パスワード欄に「Test1234」を入力する
4. 「ログイン」ボタンをクリックする
期待結果:
- ダッシュボード画面(/dashboard)に遷移する
- 画面右上にユーザー名が表示される
実際結果: (テスト実行時に記入)
合否: (テスト実行時に記入)
例2: 異常系のテストケース
テストID: TC-LOGIN-002
テスト名: 間違ったパスワードでログインできない
前提条件:
- テストユーザーが登録済み(email: test@example.com)
- ログアウト状態であること
手順:
1. ブラウザで https://example.com/login を開く
2. メールアドレス欄に「test@example.com」を入力する
3. パスワード欄に「WrongPassword」を入力する
4. 「ログイン」ボタンをクリックする
期待結果:
- ログインページにとどまる
- 「メールアドレスまたはパスワードが正しくありません」と表示される
- パスワード欄がクリアされる
実際結果: (テスト実行時に記入)
合否: (テスト実行時に記入)
テストケース表形式
実際の現場では、スプレッドシートや表形式でまとめることが多いです。
| ID | テスト名 | 前提条件 | 手順 | 期待結果 | 実際結果 | 合否 |
|---|---|---|---|---|---|---|
| TC-LOGIN-001 | 正常ログイン | ユーザー登録済み | 1.ログインページを開く 2.正しいメアド入力 3.正しいPW入力 4.ログインボタンクリック | ダッシュボードに遷移 | ||
| TC-LOGIN-002 | 不正パスワード | ユーザー登録済み | 1.ログインページを開く 2.正しいメアド入力 3.不正PW入力 4.ログインボタンクリック | エラーメッセージ表示 | ||
| TC-LOGIN-003 | 未登録メアド | なし | 1.ログインページを開く 2.未登録メアド入力 3.PW入力 4.ログインボタンクリック | エラーメッセージ表示 | ||
| TC-LOGIN-004 | 空欄でログイン | なし | 1.ログインページを開く 2.何も入力せず 3.ログインボタンクリック | バリデーションエラー表示 |
テストケースを読むときのポイント
1. 前提条件を必ず確認する
テスト実行前に条件が整っていないと、テスト結果が信頼できません。
× やりがちな失敗:
前提条件「ユーザーが登録済み」を確認せずにテスト実行
→ ログインできない
→ バグ? → いいえ、ユーザーが未登録だっただけ
2. 手順を正確に追う
自分の判断で手順をスキップしたり、順番を変えてはいけません。
× 手順3と4を逆にしたら、テストの意味が変わる
× 「たぶんこれでいいだろう」と手順を省略する
○ 書いてある通りに1ステップずつ実行する
3. 期待結果と実際結果を比較する
「なんとなく合っている」ではなく、期待結果と一字一句比較します。
期待結果: 「メールアドレスまたはパスワードが正しくありません」
実際結果: 「認証に失敗しました」
→ メッセージが異なる = FAIL(バグとして報告)
よくある疑問
「正常系」と「異常系」とは?
| 分類 | 説明 | 例 |
|---|---|---|
| 正常系 | 期待通りの入力での動作 | 正しいID/PWでログイン |
| 異常系 | 想定外の入力での動作 | 間違ったPW、空欄、特殊文字 |
テストでは、正常系だけでなく異常系も必ずテストします。
「境界値」とは?
値の境目(ギリギリのところ)をテストすることです。
例: パスワードは8文字以上
テストすべき値:
- 7文字(NG になるはず)
- 8文字(OK になるはず)
- 9文字(OK になるはず)
まとめ
| ポイント | 内容 |
|---|---|
| テストケースの構成 | ID、名前、前提条件、手順、期待結果、実際結果、合否 |
| 読み方のポイント | 前提条件の確認、手順の正確な実行、結果の厳密な比較 |
| 正常系と異常系 | 両方テストすることで品質を確保 |
| 境界値 | 値の境目を重点的にテストする |
チェックリスト
- テストケースの各要素を説明できる
- 前提条件の重要性を理解した
- 正常系と異常系の違いが分かる
- 境界値テ ストの考え方を理解した
次のステップへ
テストケースの読み方が理解できましたか?
次のセクションでは、実際にテストを実行する方法を学びます。 手順書に従ってテストを実行し、結果を記録する流れを体験しましょう。
推定読了時間: 30分