mcpField
M
manual-testing

manual-testing

github.com/petekpテスト・品質1054 回インストール21 週間前に更新
リポジトリ

manual-testing について

manual-testing は、最近の変更を検証するテストスキルです。自動チェックを優先し、ツールで確認できない項目だけを手動検証に回し、結果の整理も支援します。

主な機能

  1. 01変更点と検証対象の特定
  2. 02自動化できるチェックの分類
  3. 03自動テストの優先実行
  4. 04絞り込んだユーザー検証の依頼
  5. 05結果と問題の要約

活用シーン

  1. 01実装後のコード変更の検証
  2. 02ビルド、テスト、API、CLI 出力の確認
  3. 03ツールで行えない外観チェックの依頼

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/petekp/agent-skills --skill manual-testing

インストール後、Claude Code で/manual-testingを入力して読み込まれたか確認します。

詳細

手動テスト

まず自動テストで現在の作業を検証し、必要な場合にのみユーザーによる検証に切り替えます。

基本原則

可能な限りすべてを自動化します。 Claude がツールを使って検証できないことだけを、ユーザーに手動で確認してもらいます。

ワークフロー

1. 現在のコンテキストを分析する

最近の作業を調べ、テストが必要な項目を特定します。

  • 最近のファイル変更と会話履歴を確認します
  • 検証する機能、修正、変更を特定します
  • テスト可能な動作と期待される結果を判断します
2. 各検証手順を分類する

検証する項目ごとに、Claude が自動的にテストできるかどうかを判断します。

Claude が検証できること(自動的に実行します):

  • コードのコンパイル/ビルド:npm run build、cargo build、go build など
  • テストの合格:npm test、pytest、cargo test など
  • リント/型チェック:eslint、tsc --noEmit、mypy など
  • API レスポンス:curl、httpie、またはスクリプト化されたリクエスト
  • ファイルの内容:ファイルを読み込み、期待されるパターンを grep で検索します
  • CLI ツールの出力:コマンドを実行して出力を確認します
  • サーバーの起動:サーバーを起動し、エラーを確認してエンドポイントの応答を検証します
  • データベースの状態:データベースにクエリを実行し、レコードの存在を確認します
  • ログ出力:ログを追跡し、期待される/予期しないメッセージを grep で検索します
  • プロセスの動作:終了コード、stdout/stderr の内容を確認します
  • ファイルの存在/権限:ls、stat、test -f
  • JSON/設定の妥当性:構造を解析して検証します
  • ポートの使用状況:lsof、netstat、localhost への curl
  • Git の状態:差分、コミット、ブランチの状態を確認します

Claude が検証できないこと(ユーザーに確認を依頼します):

  • 見た目(色、レイアウト、余白、配置)
  • アニメーションやトランジション
  • ユーザー体験の感覚(応答性、直感的かどうか)
  • クロスブラウザーでの表示
  • モバイル端末での動作
  • 物理ハードウェアとの連携
  • サードパーティサービスの UI(OAuth フロー、支払いフォーム)
  • 実際のスクリーンリーダーを使ったアクセシビリティ
  • パフォーマンスの体感(速く/遅く感じるか)
3. 自動検証を実行する

自動化可能なチェックをすべて先に実行します。徹底的に確認してください。

# Example: Testing a web feature
npm run build          # Compiles?
npm run lint           # No lint errors?
npm test               # Tests pass?
npm run dev &          # Server starts?
sleep 3
curl localhost:3000/api/endpoint  # API responds correctly?

進捗に応じて結果を報告します。自動テストに失敗した場合は、ユーザーに検証を依頼する前に中断して対処します。

4. ユーザーによる検証(必要な場合のみ)

Claude が自動化できない手順については、選択可能な結果を提示し、一つずつ順番に確認します。

Step N of M: [Brief description]

**Action:** [Specific instruction - what to do]

**Expected:** [What should happen if working correctly]

次に、予測される結果を添えて AskUserQuestion を使用します。

  • 最も可能性の高い結果を 2~4 個、選択肢として提示します
  • 最初の選択肢:期待される/成功の結果
  • 残りの選択肢:よくある失敗パターン
  • 自由記述の「その他」選択肢は自動的に提示されます

例:

{
  "questions": [{
    "question": "How does the button look?",
    "header": "Visual check",
    "options": [
      {"label": "Looks correct", "description": "Blue button, proper spacing, readable text"},
      {"label": "Wrong color/style", "description": "Button exists but styling is off"},
      {"label": "Layout broken", "description": "Elements overlapping or misaligned"},
      {"label": "Not visible", "description": "Button missing or hidden"}
    ],
    "multiSelect": false
  }]
}
5. 結果に対応する

自動テストに失敗した場合: 次に進む前に中断して修正します。

ユーザーから問題の報告があった場合: 内容を記録し、今すぐ調査するか、テストを続けるかを確認します。

6. 要約する

すべての手順が完了したら、次の内容をまとめます。

  • 自動的に検証した内容(合格/不合格を含む)
  • ユーザーが検証した内容(結果を含む)
  • 見つかった問題の概要
  • 次のアクションの提案

ガイドライン

  • 可能であれば自動チェックを並行して実行します
  • 検証方法を工夫してください。多くの項目はプログラムでテストできます
  • 自動化できるか判断がつかない場合は、まず試してください
  • ユーザーによる検証は最小限にし、見た目や体験に関する確認に絞ります

コメント