テスト戦略

体系的なテストアプローチでスキルが信頼性高く動作することを確認します。

テストマトリクス

3つの次元でスキルをテストします:

1. 通常の動作

スキルは典型的なユースケースで機能するか?

テストシナリオ:

  • スコープ内の標準的なリクエスト
  • リクエストの一般的なバリエーション
  • 連続する複数の関連リクエスト

「React ガイドライン」スキルの例:

「ボタンコンポーネントを作成」 「ローディング状態のクリックハンドラーを追加」 「アクセシブルにする」

2. エッジケース

スキルは異常だが有効なリクエストを処理するか?

テストシナリオ:

  • 境界条件
  • 異常な組み合わせ
  • 最小および最大の入力

例:

「空のコンポーネントを作成」 「20個のpropsを持つコンポーネントを作成」 「5レベルの深さのネストされたコンポーネント」

3. スコープ外

スキルは正しく保留または辞退するか?

テストシナリオ:

  • スキルのドメイン外のリクエスト
  • 関連しているように見えるがカバーされていないリクエスト
  • スキルと競合する可能性のあるリクエスト

「React ガイドライン」スキルの例:

「データベースをセットアップするには?」 「Pythonスクリプトを書いて」 「代わりにVueを使うべき?」

テストチェックリスト

リリース前

  • [ ] すべての文書化されたガイドラインをテスト
  • [ ] 例が期待通りの出力を生成することを確認
  • [ ] エッジケースがエラーを起こさないことを確認
  • [ ] スコープ外の処理が適切であることを確認
  • [ ] すべてのサポートされているプラットフォームでテスト

リリース後

  • [ ] ユーザーフィードバックをモニター
  • [ ] 実際のシナリオでテスト
  • [ ] 人気のスキルとの競合をチェック
  • [ ] 更新が既存の動作を壊さないことを確認

プラットフォーム固有のテスト

Claude Code

bash
# スキルをインストール
claude skill add your-username/skill-name

# プロジェクトでテスト
claude "テストプロンプトをここに"

# 動作を確認
# レスポンスがガイドラインに従っているかチェック

Codex CLI

bash
# スキルを追加
codex config add-skill your-username/skill-name

# テスト
codex "テストプロンプトをここに"

ChatGPT

  1. スキルの内容をカスタム指示に追加
  2. 新しい会話を開始
  3. プロンプトをテストしてレスポンスを確認

自動テスト

徹底的なテストのために、テストスイートを作成:

typescript
// skill-tests.ts
interface TestCase {
  prompt: string;
  expectedBehavior: string[];
  shouldNotContain?: string[];
}

const testCases: TestCase[] = [
  {
    prompt: "Create a React button component",
    expectedBehavior: [
      "Uses functional component",
      "Includes TypeScript types",
      "Has accessibility attributes",
    ],
    shouldNotContain: [
      "class component",
      "any type",
    ],
  },
  // テストケースを追加...
];

回帰テスト

スキルを更新する際:

  1. 現在の動作を文書化 - 現在の出力例を保存
  2. 変更を加える - スキルを更新
  3. 出力を比較 - 予期しない変更をチェック
  4. 改善を確認 - 意図した変更が機能することを確認

ユーザーテスト

広範なリリース前に:

  1. アルファテスト - 2〜3人の信頼できるユーザーでテスト
  2. フィードバックを収集 - 何が機能する?何が混乱する?
  3. 反復 - 改善を行う
  4. ベータテスト - より大きなグループでテスト
  5. リリース - マーケットプレイスに公開

一般的な問題のデバッグ

スキルが有効にならない

確認事項:

  • スキルは正しくインストールされているか?
  • プロンプトはスキルのドメインに関連しているか?
  • より高い優先度の競合するスキルがあるか?

一貫性のない動作

確認事項:

  • ガイドラインは十分に具体的か?
  • 矛盾するルールがあるか?
  • スキルが広すぎるか?

予期しない出力

確認事項:

  • 例は明確か?
  • コンテキストセクションは正確か?
  • カバーされていないエッジケースがあるか?

次のステップ