# テスト駆動開発が、人だけのときよりエージェントで効くのはなぜか

Canonical URL: https://bestskillsforclaude.com/ja/skills/test-driven-development
Language: ja
Skill: test-driven-development
Publisher: Jesse Vincent (obra) (https://github.com/obra)
Source: https://github.com/obra/superpowers
License as stated by the publisher: MIT
Runtime: Claude Code and other supported coding agents
Category: エンジニアリングの規律
Last reviewed: 2026-08-05

失敗するテストが、依頼を正しく理解したことを示す唯一の証拠だからです。

## Short answer
Jesse Vincent の superpowers に含まれる test-driven-development スキルは、レッド、グリーン、リファクタの周期でエージェントを進めます。まず失敗するテスト、次にそれを通す最小の変更、そして整理です。エージェントの場合、失敗するテストは二重の役目を果たします。コードを書き始める前に要件を理解したことも示すからです。

Best for: 挙動を確認できる機能追加や不具合修正、とくに手作業での確認が遅い領域。
Skip it if: 探索や試作をしている、あるいは明日捨てるコードの場合。

## What to remember
- 失敗するテストは、言葉でかわせない仕様です。
- 失敗を目で見てください。いきなり緑になる場合、失敗し得ないテストが書かれています。
- 小さな周期が本質です。大きな周期はテストなしと同じ誤った安心を与えます。
- より広い方法論の一部であり、writing-plans と併用すると効きます。

## 実務で何が変わるか
エージェント支援の開発で難しいのは能力ではなく検証です。エージェントは成功したと信じ、差分は妥当に見え、誰も何も確認していません。失敗するテストは、その信念を機械的な事実に変えます。
誤解の発見も前倒しになります。エージェントが誤った挙動を主張するテストを書いたなら、大きな実装が積み上がった後ではなく最初の 1 分で分かります。

## 期待に届かない点
実装がたまたましている動作をそのまま主張するテストは、テストなしより有害です。欠陥をその場に固定するからです。結果だけでなくテスト本文を読んでください。
探索とも相性が悪いです。正解の形がまだ分からない段階で先にアサーションを書くのは、手順を増やした当てずっぽうです。

## Install and first run
1. obra/superpowers から MIT ライセンスで superpowers を導入します。
2. 実装が書かれる前に、テストが失敗するところを必ず見せさせます。
3. 1 周期を小さな挙動 1 つに保ちます。周期が大きいと、何が失敗したのかが隠れます。

## Questions
### なぜ失敗を目で見る必要がありますか
実装前に通るテストは何も検証していません。失敗を確認するのが最も安い点検です。

### エージェントの速度は落ちますか
変更単位では落ちます。1 週間単位ではたいてい速くなります。未検証の変更による手戻りが消えるからです。

### superpowers の他と切り離せますか
大きな方法論の中の 1 スキルです。単体でも動き、writing-plans や verification-before-completion と併用するとより効きます。

## Sources
- GitHub の obra/superpowers: https://github.com/obra/superpowers
- エージェントスキルのディレクトリ: https://skills.sh

## Other languages
- English: https://bestskillsforclaude.com/en/skills/test-driven-development
- Spanish: https://bestskillsforclaude.com/es/skills/test-driven-development
- Brazilian Portuguese: https://bestskillsforclaude.com/pt-br/skills/test-driven-development
