054-design-tdd について
054-design-tddは、Java開発者を小さなレッド・グリーン・リファクタリングのサイクルで導く対話型スキルです。候補テストの一覧を管理し、失敗するテストでインターフェースを明確にして、検証漏れやリスクを報告します。
主な機能
- 01候補テスト一覧の管理
- 02各サイクルで一つの振る舞いを選択
- 03本番コードより先に失敗テストを作成
- 04選択したテストに必要な実装のみ追加
- 05テストを通した状態でリファクタリング
- 06未実施チェックとリスクの報告
活用シーン
- 01テスト優先でJava機能を実装
- 02失敗テストによるAPIの明確化
- 03実装中の境界ケースの追跡
- 04未完了の検証内容の報告
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jabrena/ plinth --skill 054-design-tddインストール後、Claude Code で/054-design-tddを入力して読み込まれたか確認します。
同梱ファイルreferences/054-design-tdd.md
詳細
テスト駆動開発の設計
Java 開発者が実装作業でテスト駆動開発を進めるためのガイドです。これは対話型の SKILL です。
この Skill で扱う内容
- テストケース候補のリストを維持または改善する
- 本番コードを編集する前に、次に有用な振る舞いまたはテストケースを選ぶ
- 失敗するテストを最初に書き、コードの公開インターフェース、API の形、または使い方を明確にする
- 選択したテストに合格するために必要な分だけ、機能する本番コードを書く
- テストが成功した状態を保ちながら、新規および既存のコードをリファクタリングする
- 現在の TDD サイクルを中断せず、新たに見つかったテストケースをリストに追加する
- 検証が不完全な場合に、スキップしたチェック、不足しているテスト、残っているリスクを報告する
制約
実装作業はレッド・グリーン・リファクタリングのサイクル内で行い、小さな変更ごとに選択した振る舞いを 1 つずつ扱います。
- 必須:TDD のガイダンスを適用する前に
references/054-design-tdd.mdを読む - 必須:複数の振る舞い、エッジケース、または疑問点が対象となる場合は、テストリストを維持または改善する
- 必須:本番コードを書く前に、次に有用な振る舞いまたはテストケースを選択する
- 必須:失敗するテストを最初に書くか説明し、それを使って公開インターフェースや使い方を明確にする
- 必須:選択した失敗するテストに合格するために必要な機能コードだけを実装する
- 必須:選択したテストに合格した後、テストが成功した状態を保ちながら、新規および既存のコードをリファクタリングする
- 必須:検証が不完全な場合は、スキップしたチェック、不足しているテスト、残っているリスクを報告する
このスキルを使用する場面
- TDD を適用する
- テスト駆動開発を使用する
- テストを軸にこの Java の変更を進める
- 失敗するテストを最初に書く
- この機能をレッド・グリーン・リファクタリングで進める
- この振る舞いをテストファーストで構築する
ワークフロー
- テストリストを作成する
references/054-design-tdd.md を読み、テストが必要になる可能性のある振る舞い、エッジケース、エラーパス、統合境界、設計上の疑問点を列挙します。作業を進める中で新たに見つかったケースもリストに追加します。
- 次の振る舞いを選択する
次に有用なテストケースを選びます。1 回のサイクルで実装できる小ささであり、設計を前進させる価値があり、期待される観測可能な結果を明らかにできるほど具体的なものにします。
- 失敗するテストを最初に書く
本番コードを書く前に、失敗するユニットテスト、統合テスト、受け入れテスト、または特性テストを書きます。テストを使って、コードの公開インターフェース、API の形、入力、出力、エラー、または使い方を明確にします。
- テストに合格させる
選択したテストに合格するために必要な、最小限の機能コードを実装します。現在失敗しているテストで必要とされていない、推測に基づく分岐、抽象化、フレームワークの配線、クリーンアップは避けます。
- テストが成功した状態でリファクタリングする
選択したテストに合格した後、関連するテストが成功した状態を保ちながら、新規および既存のコードをリファクタリングし、名前、重複、責務の配置、型の設計、テストの明瞭さを改善します。
- 報告して続行する
選択した振る舞い、失敗するテストを最初に書いたことが分かる内容、合格のために追加したコード、実施したリファクタリング、検証結果、スキップしたチェック、不足しているテスト、残っているリスクを報告します。次のサイクルに向けてテストリストに戻ります。
リファレンス
詳しいガイダンス、例、制約については、references/054-design-tdd.md を参照してください。