第3部:ドキュメントスキル / 第7章:テスト

試験仕様書の読み方

試験仕様書(テスト仕様書)は、テストの内容と手順を定義したドキュメントです。テスト実施や品質確認で使います。

📖 読了目安 約15分 対象:テスト仕様書を理解し、品質確認をしたい方

試験仕様書とは

役割

  • テスト観点(何を確認するか)を定義
  • テストケース(具体的な確認項目)を定義
  • テスト手順(操作方法)を定義
  • 期待結果(正しい動作)を定義

いつ使うか

テスト実施時テスト手順・期待結果の確認
テスト設計時テストケースの作成
実装時動作確認の指針として
品質確認時何をテストしたかの記録

試験仕様書の構成

テストレベル

レベル別名内容担当
単体テストUT関数・メソッド単位開発者
結合テストIT機能間の連携開発者/テスター
システムテストSTシステム全体テスター
受入テストUATお客様視点での確認お客様

よくある構成要素

項目内容確認ポイント
テスト対象何をテストするか機能ID、画面ID
テスト観点どんな観点で確認するか正常系、異常系
前提条件テスト実施前の状態データ、環境
テスト手順操作の手順入力値、操作順序
期待結果正しい動作表示内容、状態変化
結果実施結果OK/NG、エビデンス

テスト観点

正常系と異常系

種類内容
正常系正しい操作での動作正しいパスワードでログインできる
異常系エラー時の動作間違ったパスワードでエラーになる
境界値境界条件での動作8文字ちょうど、7文字、9文字
準正常系正常だが特殊なケース空のカートで注文を押す

よくあるテスト観点

観点確認すること
機能機能が正しく動作するか
表示画面表示が正しいか
入力チェックバリデーションが正しいか
状態遷移画面遷移が正しいか
データデータが正しく登録/更新されるか
排他同時操作で問題ないか

【サンプル】試験仕様書の実例

ユーザー登録機能の試験仕様書サンプルです。

基本情報

項目内容
テスト対象ユーザー登録機能
関連設計書SCR-001(画面設計書)、API-001(処理設計書)
テストレベル結合テスト
作成日2024/02/01
バージョン1.0

テスト環境

項目内容
環境開発環境(dev.example.com)
ブラウザChrome 最新版
テストデータ既存ユーザー「test@example.com」が登録済み

テストケース一覧

No大項目観点テスト内容
1正常系登録成功必須項目をすべて入力して登録
2正常系任意項目電話番号を空欄で登録
3異常系必須チェックメールアドレス未入力
4異常系形式チェックメールアドレス形式不正
5異常系重複チェック登録済みメールアドレス
6異常系桁数チェックパスワード7文字
7境界値桁数境界パスワード8文字(ちょうど)
8異常系形式チェックパスワード英字のみ
9異常系一致チェックパスワード確認不一致

テストケース詳細

【TC-001】正常系:必須項目をすべて入力して登録

テスト観点:正しい入力で正常に登録できることを確認する。

前提条件

  • ユーザー登録画面(SCR-001)を表示
  • 入力するメールアドレスは未登録であること

テストデータ

項目入力値
メールアドレスnewuser@example.com
パスワードPassword123
パスワード(確認)Password123
氏名テスト太郎
電話番号03-1234-5678

テスト手順

  1. メールアドレス欄に「newuser@example.com」を入力
  2. パスワード欄に「Password123」を入力
  3. パスワード(確認)欄に「Password123」を入力
  4. 氏名欄に「テスト太郎」を入力
  5. 電話番号欄に「03-1234-5678」を入力
  6. 「登録」ボタンをクリック

期待結果

  1. 登録完了画面(SCR-002)に遷移する
  2. 「登録が完了しました」メッセージが表示される
  3. DBにユーザー情報が登録される

確認ポイント

【TC-003】異常系:メールアドレス未入力

テスト観点:必須項目が未入力の場合、エラーになることを確認する。

前提条件

  • ユーザー登録画面(SCR-001)を表示

テストデータ

項目入力値
メールアドレス(空欄)
パスワードPassword123
パスワード(確認)Password123
氏名テスト太郎

テスト手順

  1. メールアドレス欄を空欄のまま
  2. パスワード欄に「Password123」を入力
  3. パスワード(確認)欄に「Password123」を入力
  4. 氏名欄に「テスト太郎」を入力
  5. 「登録」ボタンをクリック

期待結果

  1. 画面遷移しない
  2. メールアドレス欄に「メールアドレスを入力してください」が表示される

確認ポイント

【TC-007】境界値:パスワード8文字(ちょうど)

テスト観点:境界値(最小桁数ちょうど)で正常に登録できることを確認する。

テストデータ

項目入力値備考
パスワードAbcde1238文字(最小)

期待結果

  • 正常に登録できる
  • エラーにならない

読み方のポイント

1. テスト観点を理解する

  • 正常系:まず動くことを確認
  • 異常系:エラーハンドリングを確認
  • 境界値:ギリギリの値を確認

2. 前提条件を確認する

テストを実施する前の状態を確認。前提条件が整っていないとテストできません。

3. 期待結果を正確に把握する

  • 何が表示されるか
  • どこに遷移するか
  • データはどう変わるか

4. テストデータを準備する

事前に必要なデータを準備。テストケースに書かれた値を使用します。

テスト実施時の注意点

エビデンス(証跡)を残す

エビデンス取得方法
画面キャプチャスクリーンショット
DBデータSELECT結果のスクリーンショット
ログログファイルのコピー
リクエスト/レスポンス開発者ツールのNetwork

NGの場合

  1. 詳細な状況を記録
  2. 再現手順を明確に
  3. 開発者に報告

報告例:

【不具合報告】
テストケース:TC-005
現象:重複チェックが動作しない
期待:「このメールアドレスは既に登録されています」が表示
実際:そのまま登録完了画面に遷移
再現手順:TC-005の手順通り
環境:開発環境(dev.example.com)
日時:2024/02/15 14:30

テスト設計に参加する場合

テストケース作成の観点

  1. 正常系:基本的な操作で動作するか
  2. 異常系:エラー時に適切な対応ができるか
  3. 境界値:境界条件で正しく動作するか
  4. 組み合わせ:条件の組み合わせで問題ないか

網羅性の確認

1年目エンジニアとしての関わり方

場面やること
テスト実施時手順通りに実施、結果を正確に記録
不具合発見時詳細な報告、再現手順の明確化
テスト設計時設計書から観点を抽出、ケース作成

ポイント:テストは「動くことの確認」ではなく「品質の証明」です。厳密に実施しましょう。

関連ドキュメント