{
  "id": "test-driven-development",
  "handle": "test-driven-development",
  "canonicalUrl": "https://bestskillsforclaude.com/ja/skills/test-driven-development",
  "language": "ja",
  "alternates": {
    "en": "https://bestskillsforclaude.com/en/skills/test-driven-development",
    "es": "https://bestskillsforclaude.com/es/skills/test-driven-development",
    "pt-BR": "https://bestskillsforclaude.com/pt-br/skills/test-driven-development",
    "ja": "https://bestskillsforclaude.com/ja/skills/test-driven-development"
  },
  "category": {
    "id": "engineering-discipline",
    "name": "エンジニアリングの規律"
  },
  "publisher": {
    "name": "Jesse Vincent (obra)",
    "url": "https://github.com/obra"
  },
  "source": "https://github.com/obra/superpowers",
  "documentation": null,
  "licenseAsStated": "MIT",
  "runtime": "Claude Code and other supported coding agents",
  "lastReviewed": "2026-08-05",
  "headline": "テスト駆動開発が、人だけのときよりエージェントで効くのはなぜか",
  "summary": "失敗するテストが、依頼を正しく理解したことを示す唯一の証拠だからです。",
  "verdict": "Jesse Vincent の superpowers に含まれる test-driven-development スキルは、レッド、グリーン、リファクタの周期でエージェントを進めます。まず失敗するテスト、次にそれを通す最小の変更、そして整理です。エージェントの場合、失敗するテストは二重の役目を果たします。コードを書き始める前に要件を理解したことも示すからです。",
  "bestFor": "挙動を確認できる機能追加や不具合修正、とくに手作業での確認が遅い領域。",
  "skipIf": "探索や試作をしている、あるいは明日捨てるコードの場合。",
  "keyTakeaways": [
    "失敗するテストは、言葉でかわせない仕様です。",
    "失敗を目で見てください。いきなり緑になる場合、失敗し得ないテストが書かれています。",
    "小さな周期が本質です。大きな周期はテストなしと同じ誤った安心を与えます。",
    "より広い方法論の一部であり、writing-plans と併用すると効きます。"
  ],
  "quickStart": [
    "obra/superpowers から MIT ライセンスで superpowers を導入します。",
    "実装が書かれる前に、テストが失敗するところを必ず見せさせます。",
    "1 周期を小さな挙動 1 つに保ちます。周期が大きいと、何が失敗したのかが隠れます。"
  ],
  "sections": [
    {
      "heading": "実務で何が変わるか",
      "paragraphs": [
        "エージェント支援の開発で難しいのは能力ではなく検証です。エージェントは成功したと信じ、差分は妥当に見え、誰も何も確認していません。失敗するテストは、その信念を機械的な事実に変えます。",
        "誤解の発見も前倒しになります。エージェントが誤った挙動を主張するテストを書いたなら、大きな実装が積み上がった後ではなく最初の 1 分で分かります。"
      ]
    },
    {
      "heading": "期待に届かない点",
      "paragraphs": [
        "実装がたまたましている動作をそのまま主張するテストは、テストなしより有害です。欠陥をその場に固定するからです。結果だけでなくテスト本文を読んでください。",
        "探索とも相性が悪いです。正解の形がまだ分からない段階で先にアサーションを書くのは、手順を増やした当てずっぽうです。"
      ]
    }
  ],
  "faq": [
    {
      "question": "なぜ失敗を目で見る必要がありますか",
      "answer": "実装前に通るテストは何も検証していません。失敗を確認するのが最も安い点検です。"
    },
    {
      "question": "エージェントの速度は落ちますか",
      "answer": "変更単位では落ちます。1 週間単位ではたいてい速くなります。未検証の変更による手戻りが消えるからです。"
    },
    {
      "question": "superpowers の他と切り離せますか",
      "answer": "大きな方法論の中の 1 スキルです。単体でも動き、writing-plans や verification-before-completion と併用するとより効きます。"
    }
  ],
  "sources": [
    {
      "label": "GitHub の obra/superpowers",
      "url": "https://github.com/obra/superpowers",
      "kind": "repository"
    },
    {
      "label": "エージェントスキルのディレクトリ",
      "url": "https://skills.sh",
      "kind": "directory"
    }
  ],
  "machineReadable": {
    "markdown": "https://bestskillsforclaude.com/ja/skills/test-driven-development/content.md",
    "json": "https://bestskillsforclaude.com/ja/skills/test-driven-development/skill.json"
  },
  "disclosure": "Editorial desk review based on the publisher's own repository. Not a security audit, a benchmark or a guarantee of maintenance."
}