external-mock-utlisted
Install: claude install-skill Saigetsu233/harness-jp-si
# 外部 Mock UT 実行スキル
本 skill は外部 API への依存を mock サーバで擬装した単体テストを **設計 → 登録 → 実行 → 後始末** の流れで完遂させる。
工程独自 skill であり、`.ai-rules/mock-server-config.md` を「設計図」として動作する。
---
## 0. 前提条件チェック
skill 発動直後、以下を順に確認する。**いずれかが満たされない場合は即座に発動を中止**し、ユーザに不足を報告。
| チェック | 不足時の振る舞い |
| --- | --- |
| `<工程ルート>/.ai-rules/mock-server-config.md` が存在 | 「mock-server-config が未設定です。`project-template/.ai-rules/mock-server-config.md.template` をコピーして記入してください」と返して中止 |
| §1「採用要否」が「採用する」 | 「本工程では mock UT 採用外です。通常 UT フローに戻ります」と返して中止 |
| §3 で Pattern A/B/C のいずれか 1 つが選択済み | 「Case 登録方式が未確定です。`mock-server-config.md` §3 で 1 つ選択してください」と返して中止 |
| §6 にテスト実行コマンドあり | コマンド未記入なら developer に確認 |
中止時は通常 UT フロー([`unit-test-design`](../../../../skills/unit-test-design/SKILL.md) のみ)に戻すよう案内する。
---
## 1. Config 読み込み
`mock-server-config.md` から以下を抽出して以降の Step で使用:
- 採用 Pattern(A / B / C)
- Base URL(環境 — local / CI / staging)
- 認証方式と secret 参照名
- Mock 対象 API 一覧
- Case 命名規約(TC-ID 形式、mapping ID 形式、fixture file 名)
- Response Fixture フォーマットと matcher の厳密度
- 実行コマンド
- クリーンアップ方針
- 運用窓��
---
## 2. UT Case を取得(既存 skill に委譲)
case 設計そのものは [`unit-test-design`](../../../../skills/unit-test-design/SKILL.md) skill の責務。本 skill では **再発明しない**。
- TC 表が既存ならそれを再利用
- 新規ならまず `unit-test-design` を発動し、観点別(正常 / 異常 / 境界 / セキュリティ)に TC 表を作成
- 本 skill は TC 表のうち **外部 API を呼ぶ case** のみを抽出して以降の Step に進める
詳細設計書の「外部 I/F」「処理ロジック」節を参照して、どの case が外部 API を呼ぶか判定。
---
## 3. 各 case に必要な mock response を起こす
case ごとに mock サーバへ登録する response を組み立てる。
### 3.1 設計の source