スキル Jesse Vincent(obra)
Test-Driven Development(テスト駆動開発)
「失敗するテストを先に書く」ことを鉄則にして、赤・緑・整理の順に実装を進めさせるスキル。テストを見ずに書いたコードは捨ててやり直させる、厳しい決まりが特徴。
- 種類
- スキル
- 提供元・作者
- Jesse Vincent(obra)
- ライセンス
- MIT
- 内容を確認した日
- 2026.11.10
何をするものか
開発手法のスキル集 Superpowers(obra/superpowers)のうち、テスト駆動開発(TDD)を守らせるためのスキルです。すでに掲載している systematic-debugging と同じリポジトリのスキルです。
中心にあるのは「失敗するテストなしに、本番のコードを書かない」という鉄則です。テストより先にコードを書いてしまったら、それを消してやり直す。参考として残す、書き換えながら使う、見ない、のどれも許さず、「消すとは消すこと」と書いています。
GitHub のリポジトリ全体のスター数は 約31万(2026-11-10 時点)です。人気のあるスキル集のなかから、すでに掲載しているものと重ならない内容を選びました。
使われる場面と頼み方
こんな依頼で読み込まれる
- 機能の実装やバグ修正を始める前(本番のコードを書く前)
頼み方の例
- この関数の追加を、TDD で進めて。まず失敗するテストから
- このバグは、再現するテストを先に書いてから直して
中身の解説
SKILL.md の構成
概要/使う場面/鉄則/赤・緑・整理/良いテスト/よくある言い訳/やり直しの合図/バグ修正の例/確認チェックリスト/行き詰まったとき/デバッグとの関係/最後の決まり
赤・緑・整理
- 赤:失敗するテストを書き、実際に失敗するところを見る。想定した理由で落ちているかを確かめる
- 緑:通るための最小限のコードだけを書き、すべてのテストが通ることを確かめる
- 整理:テストが通ったまま、コードを整える。そして次のテストへ
行き詰まったとき
| 困りごと | 対処 |
|---|---|
| どうテストすればいいか分からない | 理想の呼び出し方を先に書き、検証から書く |
| テストが複雑すぎる | 設計が複雑すぎる。インターフェースを単純にする |
| 何もかも模擬にしないと書けない | 部品が結びつきすぎている。依存を外から渡す形にする |
完了前のチェック
すべての新しい関数にテストがある/各テストが失敗するところを見た/失敗の理由が想定どおり/最小限のコードで通した/出力にエラーや警告がない/模擬は避けられない場合だけ/境界の場合も扱った、の 8 点です。1 つでも欠ければ、TDD をしていないので最初からやり直す、としています。
ファイル構成
skills/test-driven-development/ ↗
| ファイル | 役割 |
|---|---|
SKILL.md | 鉄則、赤・緑・整理、チェックリストなど |
writing-good-tests.md | 良いテストの書き方の補足 |
入れ方
必要なもの対象の言語のテスト実行環境
Claude Code で使う
スキルのフォルダ(skills/test-driven-development)を、~/.claude/skills/ の下(個人用)か、プロジェクトの .claude/skills/ の下(そのプロジェクト用)にコピーします。フォルダの名前はそのまま使います。
git clone https://github.com/obra/superpowers.git
cp -r superpowers/skills/test-driven-development ~/.claude/skills/
コピーしたあと、Claude Code を開き直すと、依頼の内容に合うときに自動で読み込まれます。
そのほか
リポジトリによっては、プラグインやコマンドでの導入方法を README に載せています。最新の手順は、リポジトリの README を確認してください。
注意点
かなり厳格な決まりで、探索的に試したいだけの場面(使い捨ての試作など)には重く感じられます。そのときは、利用者が例外を認める、と書かれています。
詳しい情報
- 動く環境
- CLI
- 料金
- 無料
- リポジトリ内の場所
- skills/test-driven-development
- 作者
- Jesse Vincent(obra)
- ライセンス
- MIT
- 内容を確認した日
- 2026-11-10
内容はリポジトリの公開内容(2026.11.10時点)にもとづきます。更新されていることがあるため、使う前にリンク先で確かめてください。