# 結合テスト・API契約・回帰記録サンプル

文書ID: IT-PLAN-014 / 版: 1.0 / 関連: API-014、ADR-001、REQ-014〜016 / 状態: 記入例・未実施

架空案件の検証計画です。接続・トレース・合格結果はまだ存在しません。

## 工程定義

- 目的: 認証・API・DBの実接続で契約とデータ整合性を確認する。
- 入力: 単体検証済み変更、接続仕様、検証環境、データ。
- AIの作業: 環境準備、契約照合、連携試験、失敗切分け、修正後の再実行。
- 成果物: 結合仕様、契約検証結果、トレース、障害票、回帰結果。
- 完了条件: 必須の実接続ケースが合格。モックのみの範囲は未検証として扱う。

## 1. 環境とデータ

接続範囲: テスト用認証テナント → 承認API → 検証用SQL DB。U001は申請者兼承認権限あり、U002は別承認者、U003は権限なし。各ケース開始前にE100をsubmittedへ初期化し、終了後にテストデータを整理する。共有環境では専用の申請IDをケースごとに割り当てる。

対象コミット・スキーマ版・認証設定版: {{BUILD_AND_ENV_VERSIONS}}

## 2. 結合テスト仕様

| ID | 連携・操作 | 期待値 | 確認する証跡 | 結果 |
| --- | --- | --- | --- | --- |
| IT-014-01 | U002で承認APIを呼ぶ | 200、approved、監査記録1件 | API応答、DB照会、request ID | 未実施 |
| IT-014-02 | 監査INSERT失敗を検証環境で注入 | 503 SAVE_FAILED、申請はsubmitted、監査0件 | トランザクションログ、DB照会 | 未実施 |
| IT-014-03 | 同一申請に2要求を同時実行 | 一方200、他方409、監査1件 | 両応答、排他ログ、DB照会 | 未実施 |
| IT-014-04 | U001が自己承認 | 403 SELF_APPROVAL、DB不変 | API応答、前後のデータ | 未実施 |
| IT-014-05 | 期限切れ認証で承認 | 401、DB不変 | 認証検証ログ、API応答 | 未実施 |

## 3. 契約確認チェック

- 成功・エラーのHTTPステータス、code、必須フィールドをAPI-014と照合する。
- 認証基盤の検証環境で失効・期限切れを試す。モックで代用したケースは実接続完了扱いにしない。
- actorIdを本文へ追加しても、認証済み本人以外へなりすませないことを確認する。
- UTCの承認時刻が保存され、画面の表示タイムゾーンと混同しない。

## 4. CI・トレース記録欄

実行ID: IT-RUN-014 / CIジョブ: {{CI_JOB_REFERENCE}} / 日時: 未実施 / データ版: {{TEST_DATA_VERSION}}

request ID: {{REQUEST_ID}} / APIログ: {{API_LOG_REFERENCE}} / DB確認: {{DB_EVIDENCE_REFERENCE}} / 認証ログ: {{AUTH_EVIDENCE_REFERENCE}}

証跡の共有前にトークンや個人情報が含まれないことを確認する。参照権限と保存期間は企業設定に従う。

## 5. 修正・回帰記録

障害ID: {{BUG_ID}} / 原因コンポーネント: {{COMPONENT}} / 修正差分: {{FIX_COMMIT}} / 再実行ケース: {{REGRESSION_CASES}} / 前後の結果: 未登録

DB保存を修正した場合の回帰例: IT-014-01〜04、UT-014-05、ST-014-01。単一ケースの再実行だけで閉じない。

## 自社への適用

接続先、認証仕様、メッセージキュー、外部APIの制限、整合性要件を追加する。{{INTEGRATION_OWNER}}が未検証境界と障害復旧条件を確認し、完了判定を記録する。
