parallel-test-fixing について
失敗したテストをファイル単位で分け、並列サブエージェントに修正を委任してから、テストスイートを再実行するスキルです。複数のテスト失敗に対応する開発者向けです。
主な機能
- 01失敗テストをファイル別に分類
- 02並列サブエージェントへ委任
- 03変更内容と競合リスクを集約
- 04テスト再実行で修正を検証
活用シーン
- 01複数の失敗テストファイルの整理
- 02独立した失敗の並列修正
- 03並列編集後の競合確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ spencerpauly/ awesome-cursor-skills --skill parallel-test-fixingインストール後、Claude Code で/parallel-test-fixingを入力して読み込まれたか確認します。
詳細
テストの並列修正
失敗しているテストを並列サブエージェントに振り分け、テストスイートの修正を速めます。
ワークフロー
1. テストスイート全体を実行する
npm test -- --no-coverage 2>&1 || true
出力を保存し、失敗したテストファイルをすべて抽出します。
2. 失敗をグループ化する
テスト出力を解析し、失敗したファイルを特定します。
- Jest:
FAIL src/components/Button.test.tsx - Vitest:
FAIL src/utils/format.test.ts - Pytest:
FAILED tests/test_api.py::test_create_user
ファイルごとにグループ化します。各ファイルが1つのタスクになります。
3. 並列サブエージェントを起動する
失敗したテストファイルごとに、generalPurpose サブエージェントを起動します。
Task: Fix the failing tests in <file>
The test file is: <path>
The test command is: <command to run just this file>
The error output was:
<paste the relevant failure output>
Steps:
1. Read the test file and the source file it tests
2. Understand why each test is failing
3. Fix the source code (preferred) or update the test if the test is wrong
4. Run the single test file to confirm it passes
5. Report what you changed and why
すべてのサブエージェントを同時に起動します。それぞれ異なるファイルを変更するため、並列で作業できます。
4. 結果を収集する
各サブエージェントの完了に応じて、以下を収集します。
- 修正されたテスト
- 変更されたファイル
- 別のサブエージェントの変更と競合する可能性があるかどうか
5. 確認する
テストスイート全体をもう一度実行し、すべてのテストが成功することを確認します。
npm test
新たな失敗(修正の競合によるもの)が発生した場合は、順番に解決します。
ヒント
- 失敗したテストが同じソースファイルを共有している場合は、編集の競合を避けるため、同じサブエージェントに割り当てます
- タイムアウトを設定します。サブエージェントが5分以上停止している場合は、進捗を確認します
- 大規模なテストスイート(失敗が50件以上)の場合は、ファイルごとに1つずつ割り当てるのではなく、サブエージェントごとに5~10件のグループに分けます
- 修正を試すたびに独立したワークツリーを使いたい場合は、
best-of-n-runnerサブエージェントを使用します
コメント
Markdown 対応