mcpField

Autoloop TDD

おすすめ手動実行
テスト最大 12 ラウンド

Autoloop TDD について

手動で開始し、最大 12 ラウンド実行するループで、対象の振る舞いをテストファーストで実装します。各ラウンドでは、失敗するテストを書き、テストスイートを緑にし、通過を保ったままリファクタリングします。

主な機能

  1. 01毎ラウンドを赤・緑・リファクタリングの順に固定
  2. 02新しいテストを単独で実行してから全体を実行
  3. 03リファクタリング後に全テストを再実行
  4. 04手動トリガーで最大 12 ラウンド

活用シーン

  1. 01新機能をテストファーストで開発する
  2. 02不具合を直す前に再現する失敗テストを書く
  3. 03テストに守られた状態で実装を整理する
目標
対象の振る舞いをテストファーストで実装し、テストスイートがすべて通ること。
終了条件
対象の振る舞いがテストでカバーされ、すべてのテストが通った時点で終了します。
各ラウンドの間に実行
npm test

起動プロンプト

Claude Code に貼り付けて実行すると、終了条件を満たすまでエージェントが以下の手順を繰り返します。

prompt.md
「Autoloop TDD」ループを開始します。
目標:対象の振る舞いをテストファーストで実装し、テストスイートがすべて通ること。
最大ラウンド数:12。
ステップ 1:失敗するテストを書く — 対象の振る舞いに対する新しいテストを追加し、そのテストだけを実行します。想定どおりの理由で失敗しなければ、先にテストを直します。 `npm test -- --testPathPattern=<new-test>`
ステップ 2:緑になることを確認する — テストを満たす最小限の実装を書き、テストスイート全体を実行します。新旧のテストがすべて通れば合格です。 `npm test`
ステップ 3:リファクタリングする — 振る舞いを変えずにコードを整理し、再度テストスイート全体を実行します。失敗した場合は、緑に戻るまで変更を戻すか修正します。 `npm test`
各ラウンドの間に実行:`npm test`
終了条件:対象の振る舞いがテストでカバーされ、すべてのテストが通った時点で終了します。

手順

各ラウンドは順番に実行され、終了条件を満たさなければ次のラウンドへ進みます(最大 12 ラウンド)。

01
失敗するテストを書く

対象の振る舞いに対する新しいテストを追加し、そのテストだけを実行します。想定どおりの理由で失敗しなければ、先にテストを直します。

$npm test -- --testPathPattern=<new-test>
02
緑になることを確認する

テストを満たす最小限の実装を書き、テストスイート全体を実行します。新旧のテストがすべて通れば合格です。

$npm test
03
リファクタリングする

振る舞いを変えずにコードを整理し、再度テストスイート全体を実行します。失敗した場合は、緑に戻るまで変更を戻すか修正します。

$npm test
未達 → 次のラウンド条件を満たせば終了

対応エージェント

この Loop をそのまま実行できるコーディングエージェントです。

Claude Code
Cursor

コメント