総合テスト仕様(STS)作成ルール
本ドキュメントは、品質保証・受入判断のために 総合テスト仕様(System Test Specification: STS) を統一形式で記述する標準ルールです。
STS は、
- 単体・結合テストを経たシステムに対して
- システム全体として成立しているか
- 業務・非機能・運用観点で破綻がないか
を確認するための テスト仕様(何を確認するか) を定義します。
0. 位置づけ(必読)
STS は テストレベル「総合テスト」 における上位仕様です。
plaintext
TSP(テスト戦略・方針)
└ STS(総合テスト仕様) ← 本書
└ STS-D(総合テスト仕様・個別)
└ STD(総合テスト設計)
└ STD-D(総合テスト設計・個別)
└ テスト実行・結果| 観点 | STS | STS-D |
|---|---|---|
| 対象 | システム全体 | 業務シナリオ単位 |
| 役割 | 何を保証するか | どのシナリオで確認するか |
| 粒度 | 観点・範囲 | シナリオ群 |
| ケース | 書かない | 書かない(設計で定義) |
1. 全体方針
- STS は 「総合テストで何を保証するか」 を定義します。
- STS は テストケース集ではありません。
- ケース分解・実行方法は下位文書(STD / STD-D)に委ねます。
- 業務・非機能・運用を横断し、
- 「局所最適ではないか」
- 「全体として破綻していないか」 を確認することが主目的です。
2. 対象範囲
対象
- 業務フロー全体(開始〜終了)
- 主要画面・主要API・主要バッチ
- 外部連携を含む実運用想定
- 非機能要件(性能・可用性・監査 等)
対象外(例)
- 外部サービス自体のSLA検証
- 単体レベルのロジック検証
- UIレイアウト細部(単体/結合で担保)
3. ファイル命名・ID規則
ファイル名(推奨)
sh
010-総合テスト仕様.md分割する場合:
sh
010-総合テスト仕様-業務.md
020-総合テスト仕様-非機能.mdID ルール
| 項目 | ルール |
|---|---|
| prefix | sts- |
| id | sts-main, sts-business, sts-nfr |
4. 推奨 Frontmatter 項目
| 項目 | 説明 | 必須 |
|---|---|---|
| id | STS ID | ○ |
| type | test 固定 | ○ |
| title | 総合テスト仕様: <対象> | ○ |
| status | draft / ready / deprecated | ○ |
| part_of | 集約ドキュメントへの所属(分割時のみ) | 任意 |
| based_on | tsp-*, bac-*, nfr-*, sac-*, adr-* | 必須 |
| supersedes | 置換関係 | 任意 |
5. 本文構成(標準テンプレ)
STS は以下の構成を 必ずこの順序で記述します。
- 概要
- 総合テストの目的
- テストスコープ
- テスト観点
- 対象シナリオの整理
- 非機能観点
- 合否判定基準
- 対象外
- メモ / 将来課題
6. 記述ガイド詳細
6.1 概要
- 総合テストの目的と位置づけを簡潔に記載します。
例:
本仕様は、業務・非機能・運用観点からシステム全体の成立性を確認するための総合テスト仕様を定義する。
6.2 総合テストの目的(必須)
「このレベルで何を保証するか」を明文化します。
例:
- 業務フローが開始から完了まで一貫して成立すること
- 想定トラブル時も業務が破綻しないこと
- 非機能要件が実運用レベルで満たされていること
6.3 テストスコープ(必須)
対象(含む)
- 主要業務フロー(例:受注〜出荷〜請求)
- 外部連携を含む一連の処理
- 管理・運用画面
対象外(除外)
- 単体テストで保証済みの計算ロジック
- 外部サービス内部仕様
6.4 テスト観点(必須)
STS の中核です。 ケースに分解せず、観点として整理します。
| 観点カテゴリ | 観点 |
|---|---|
| 業務 | 正常業務フローが完結する |
| 業務 | 例外発生時も業務が継続可能 |
| データ | データ整合性が保たれる |
| 連携 | 外部連携失敗時の影響が制御される |
| 運用 | 障害検知・復旧が可能 |
| セキュリティ | 権限・監査が機能する |
6.5 対象シナリオの整理(必須)
STS では 「どの業務シナリオを対象にするか」 を定義します。
| シナリオ名 | 概要 | 備考 |
|---|---|---|
| 受注〜出荷 | 通常販売業務 | 主シナリオ |
| 在庫不足対応 | 欠品時の業務 | 例外 |
| 障害復旧 | 外部連携失敗 | 運用 |
※ シナリオ詳細・ケースは STS-D / STD で定義
6.6 非機能観点(必須)
NFR/SAC と 明示的に紐付けます。
| 観点 | 対応NFR/SAC |
|---|---|
| 性能 | nfr-performance |
| 可用性 | nfr-availability |
| 監査 | sac-audit |
| セキュリティ | sac-security |
6.7 合否判定基準(必須)
総合テスト完了の判断基準を明確にします。
例:
- 業務シナリオが全て実施され、重大不具合が残っていない
- 非機能要件が全て満たされている
- 既知不具合は業務影響が限定的で承認済み
6.8 対象外
- 本番運用中のSLA保証
- 災害対策訓練(別計画)
6.9 メモ / 将来課題
- ピーク条件の再定義
- 本番データ量での再検証
7. 禁止事項
| 禁止事項 | 理由 |
|---|---|
| 個別テストケースの列挙 | 設計で扱う |
| 実装クラス・SQL記載 | 実装依存 |
| 数値根拠のない性能基準 | 合否不能 |
| UI操作の逐語列挙 | 変更に弱い |
8. サンプル(最小)
yaml
---
id: sts-main
type: test
title: 総合テスト仕様: 全体
status: draft
part_of: []
based_on:
- tsp-overview
- bac-main
- nfr-main
---9. 生成AI向け指示テンプレート
- 以下のルールに従って 総合テスト仕様(STS) を 1 ファイル作成してください。
- 目的は「システム全体として成立しているか」を確認することです。
- 観点・スコープ・対象シナリオを定義し、ケースは記載しないでください。
- 実装詳細、SQL、クラス名、クリック手順の逐語列挙は禁止です。