テスト駆動開発(TDD)の方法論とRed-Green-Refactorサイクルの実践ガイド。テストの書き方、言語別テストフレームワークの選定、TDDパターンを提供する。テスト、TDD、テスト駆動、ユニットテスト、テストファーストに関する質問時に使用する。
From tdd-enforcenpx claudepluginhub utakatakyosui/c2lab --plugin tdd-enforceThis skill uses the workspace's default tool permissions.
tdd-patterns.mdtest-design.mdtesting-frameworks.mdSearches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Implements structured self-debugging workflow for AI agent failures: capture errors, diagnose patterns like loops or context overflow, apply contained recoveries, and generate introspection reports.
すべての実装コードには、対応するテストが必要。テストを先に書き、テストが失敗することを確認してから実装する。
Arrange-Act-Assert (AAA):
// Arrange: テストの準備
// Act: テスト対象の実行
// Assert: 結果の検証
Given-When-Then:
// Given: 前提条件
// When: 操作
// Then: 期待結果
| 言語 | フレームワーク | コマンド |
|---|---|---|
| Rust | cargo test (built-in) | cargo test |
| TypeScript/JS | Vitest | npx vitest |
| TypeScript/JS | Jest | npx jest |
| Python | pytest | pytest |
| Go | testing (built-in) | go test ./... |
| C# | xUnit / NUnit | dotnet test |
| Java | JUnit 5 | mvn test / gradle test |
| Ruby | RSpec / Minitest | rspec / ruby -Itest |
| Elixir | ExUnit (built-in) | mix test |
| Swift | XCTest (built-in) | swift test |
| 言語 | テストファイルパターン | 例 |
|---|---|---|
| Rust | 同一ファイル内 #[cfg(test)] or tests/ | src/lib.rs, tests/integration.rs |
| TypeScript | {name}.test.ts, {name}.spec.ts | Button.test.tsx |
| Python | test_{name}.py, {name}_test.py | test_parser.py |
| Go | {name}_test.go | parser_test.go |
| Java | {Name}Test.java | ParserTest.java |
以下のファイルはテスト不要:
*.config.*, *.json, *.yaml, *.toml, Cargo.toml 等)*.md)*.types.ts, *.d.ts)index.ts でエクスポートのみ).env*).github/, Dockerfile 等)