test について
コーディングエージェント向けの検証段階スキルで、タスクの受け入れ基準に照らして実装を確認し、証拠をテストレポートに記録します。チェックを合格、スキップ、ブロックに分け、別途デプロイが必要な場合は稼働環境の動作も検証します。
主な機能
- 01受け入れ基準からチェックを作成
- 02対象を絞ったプロジェクト検証を優先
- 03コマンド出力とスキップ項目を記録
- 04リグレッションチェックを必須化
- 05docs/testing/ に最終レポートを作成
活用シーン
- 01タスク文書に沿った実装の検証
- 02レビューや引き継ぎ向けの証拠記録
- 03サービス別デプロイ後の動作確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ eljun/ claude-workflow-skills --skill testインストール後、Claude Code で/testを入力して読み込まれたか確認します。
同梱ファイルtemplates/test-report.md
詳細
test - 検証ステージ
不変条件
- タスク文書の受け入れ基準に照らして検証します。
- プロジェクトで利用できる最適な検証手順を使用します。
- 中核のワークフローで、特定のブラウザー自動化ツールを必須にしません。
docs/testing/に最終レポートを必ず 1 つ作成します。- テストに合格し、ユーザーが承認したら、
TASKS.mdをApprovedに更新し、行が移動したことを確認するためトラッカーを再度読み込みます。トラッカーが古いままだと、後続の処理やヘッドレスセッションがブロックされます。
ランタイムアダプターでは、このステージをスラッシュコマンド、メニューアクション、または自然言語によるスキル呼び出しとして公開できます。ポータブルなステージ名は test です。
ワークフロー
AGENTS.mdを読みます。- タスク ID を特定し、
docs/task/{ID}-{task-name}.mdを読みます。 - タスクが品質ゲートに到達したことを確認します。
Acceptance CriteriaとVerification Approachに基づいて検証計画を作成します。- 既存のプロジェクトコマンドと CI 互換のチェックを優先します。
- 安全な検証コマンドを実行します。
- タスクで必要な場合に限り、ブラウザー自動化または手動チェックを使用します。
- プロジェクトに
docs/templates/test-report.mdがあれば、そのテンプレートを使用してdocs/testing/{ID}-{task-name}.mdを作成します。なければ、このファイルと同じ場所にバンドルされているtemplates/test-report.mdを使用します。 - テストに合格してユーザーが承認した場合に限り、タスクを
Approvedに移動します。修正が必要な場合はTestingのままにします。 - 移動した場合は
TASKS.mdを再度読み込み、タスクの行がApprovedにあり、Testingには存在しないことを確認します。行が想定したセクションにない場合、移動が反映されていません。引き渡し前に編集してください。
検証の優先順位
まず、信頼性を保てる範囲で最も対象を絞ったチェックを使用します。
- 純粋なロジックにはユニットテストを使用します。
- API、データベース、サービス、またはモジュール間の動作には統合テストを使用します。
- ユーザーに見えるワークフローには、ブラウザーチェックまたはエンドツーエンドチェックを使用します。
- プロジェクトの品質基準に含まれる場合は、型チェック、リント、ビルドなどの静的チェックを使用します。
- 自動化が利用できない、または費用対効果が低い場合に限り、手動で確認します。
実行可能な検証方法がない場合は、不足しているものを説明した BLOCKED レポートを作成します。
証拠に関するルール
- 各基準のチェックを実行し、タスク文書の
Baselineと比較します。 両方の値を記録します。チェックが実行され、期待される結果が示された場合に限り、その基準は合格です。 - 判定方法の信頼性を評価します。 ソーステキスト、ファイル構造、またはモックの呼び出し回数を検証するチェックで確認できるのは、コードの形状であり、動作ではありません。そのような結果は弱い証拠として示し、動作や出力を確認できる場合は、そちらも実行します。
- リグレッションがないことを確認するチェックは必須であり、省略できません。 タスクで変更してはならないとされている動作を再実行します。
- 推論だけを根拠に PASS と判定してはいけません。 チェックを実行できなかった場合は、その理由とともに SKIPPED または BLOCKED とします。
ライブ検証
テストに合格すればコードが正しいことは示せますが、変更が稼働中であることまでは示せません。変更が個別にデプロイされる複数の部分(サービス、関数、ワーカー、マイグレーション)を通じて反映される場合は、次のようにします。
- 稼働状況(ステータスコード、「ジョブ成功」、デプロイ済みバージョン番号)ではなく、実行中のシステムにおける出力(変更によって生成される行、メッセージ、レコード)を検証します。
- 先にデプロイまたは担当者による作業が必要なチェックは、PASS とせず、必要な手順を正確に記載して Deferred とします。
レポートのルール
- 最終レポートは
docs/testing/のみに作成します。 - 実行したコマンドは正確に記録します。
- スキップしたチェックとその理由を記録します。
- セッション履歴がなくても実装ステージで問題を修正できるだけの証拠を含めます。
引き渡し
PASS:
Verification passed for task {ID}
Report: docs/testing/{ID}-{task-name}.md
Next stage after user approval: document {ID}
FAIL または BLOCKED:
Verification failed or blocked for task {ID}
Report: docs/testing/{ID}-{task-name}.md
Return to implementation with the report context.
コメント
Markdown 対応