開発手法 / TDD
TDD と Phase。
開発手法 / TDD
TDD (Test-Driven Development)
テストを実装より先に書く。Red-Green-Refactor を高速に回す。
Red-Green-Refactor
TDD の基本サイクル。
- RED: 失敗するテストを書く(実装はまだ書かない)
- GREEN: テストが通る最小コード(汚くてもよい)
- REFACTOR: テストを通したまま設計改善(新規テスト追加禁止)
Inside-out TDD / Outside-in TDD
TDD の 2 アプローチ。
- Inside-out: ドメインから外側へ。モック最小。本ドキュメントの推奨
- Outside-in: UI/API から内側へ。依存をモックで埋める
AAA (Arrange-Act-Assert)
テストを 3 段階で書く構造。Arrange(準備)→ Act(1 回実行)→ Assert(検証)。
C0 / C1 / C2 カバレッジ
テストでコードが実行された割合の種類。
- C0: 全行が 1 回以上実行されたか
- C1:
if/elseの両分岐が実行されたか - C2: 複合条件の各項が真偽両方を取ったか
目安: C0 80%+ / C1 70%+。