test-tier-selection について
test-tier-selectionは、変更の種類や規模に応じたテスト範囲を選ぶためのガイダンススキルです。判断表と段階の引き上げ条件により、ユニット、インテグレーション、E2Eテストの実行時期を示します。
主な機能
- 01変更種別に応じたテスト階層の選択
- 02テスト範囲を広げる条件の提示
- 03各階層の実行コマンドを掲載
- 04関連エージェントへの相談条件を提示
活用シーン
- 01小規模なコード変更のテスト選択
- 02機能やAPI変更のテスト範囲決定
- 03コミットやPR前のテスト計画
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill test-tier-selectionインストール後、Claude Code で/test-tier-selectionを入力して読み込まれたか確認します。
詳細
テストティアの選択
変更のコンテキストと範囲に基づいて、適切なテストティアを選択するための自動ガイダンスです。
テストティアの定義
| ティア | 所要時間 | 範囲 | 実行するタイミング |
|---|---|---|---|
| Unit | < 30s | 単一の関数/モジュール | コードを変更するたび |
| Integration | < 5min | コンポーネント間の連携 | 機能の完成後 |
| E2E | < 30min | ユーザーの一連の操作全体 | コミット/PR の前 |
判断マトリクス
変更の種類 → テストティア
| 変更の種類 | Unit | Integration | E2E |
|---|---|---|---|
| 単一関数の修正 | 必須 | スキップ | スキップ |
| 新機能(1 ファイル) | 必須 | 必須 | スキップ |
| 複数ファイルにまたがる機能 | 必須 | 必須 | 必須 |
| リファクタリング | 必須 | 必須 | 任意 |
| API の変更 | 必須 | 必須 | 必須 |
| UI の変更 | 必須 | 任意 | 必須 |
| バグ修正(局所的) | 必須 | 任意 | スキップ |
| データベースの変更 | 必須 | 必須 | 必須 |
| 設定の変更 | 必須 | 必須 | 任意 |
エスカレーションのサイン
Integration にエスカレーションする条件:
- 変更が複数のファイルにまたがる
- ビジネスロジックに影響する
- サービス間の境界を変更する
- データベースクエリを変更する
E2E にエスカレーションする条件:
- ユーザー向けの機能を変更する
- 認証/認可を変更する
- クリティカルパスの機能に関わる
- PR の作成前
ティア別コマンド
# Tier 1: Unit (fast feedback)
/test:quick
# Tier 2: Integration (feature completion)
/test:full --coverage
# Tier 3: E2E (pre-commit)
/test:full
エージェントへの相談が必要な条件
次の場合は test-architecture エージェントに相談してください:
- 新しい機能モジュールを作成した
- カバレッジが 5% を超えて低下した
- 不安定なテストが 3 件を超えて検出された
- フレームワークに関する疑問が生じた
- テスト戦略の調整が必要になった
次の場合は test-runner エージェントに相談してください:
- 分析を伴うテスト実行が必要
- 診断が必要な失敗が複数ある
- 簡潔な失敗の概要が必要
次の場合は system-debugging エージェントに相談してください:
- 原因が不明な統合テストの失敗
- 環境やタイミングの問題
- 並行処理に関連する不安定なテスト
クイックリファレンス
小規模な変更の後
1. Run /test:quick
2. If pass: Continue working
3. If fail: Fix immediately
機能の完成後
1. Run /test:full --coverage
2. Check coverage targets met
3. If gaps: /test:consult coverage
コミット/PR の前
1. Run /test:full
2. All tiers must pass
3. Review coverage report
新機能の場合
1. /test:consult new-feature
2. Write tests (TDD)
3. Run /test:quick during development
4. Run /test:full before PR
アクティベーション条件
次の場合に、このスキルが自動的に有効になります:
- ユーザーが「test」「run tests」「testing」に言及したとき
- Claude によるコード変更の後
- TDD ワークフロー中
/test:*コマンドが呼び出されたとき- テスト戦略について話し合うとき
コメント
Markdown 対応