TDD・BDD・コードレビューは品質保証の重要プラクティス。AP科目Aでも頻出になりつつあります。
TDD はテストを先に書いて失敗させ、最小限のコードで通す → リファクタリング、というサイクル (Red-Green-Refactor)。
BDD は振る舞いを Given-When-Then で記述し、テストを仕様書としても機能させる手法。
TDDのメリットって、どんなとこなの?
(1) テスト容易性の高い設計が自然に生まれる、(2) リファクタリング時の安全網になる、(3) 仕様の明示化、(4) バグ修正速度が上がる。
短期では遅く見えても、長期で品質と速度を両立できるわ。
コードレビュー って具体的に何をするんですかぁ?
他者のコードを読み、設計・読みやすさ・バグ・セキュリティの観点で意見する活動。
プルリクエスト ベースが現代の標準。
チェックリスト・マージガード (必須レビュー数)・自動化 (Lint・テスト) を組み合わせます。
AP では『TDD の Red/Green/Refactor サイクル』『BDD の Given-When-Then』『コードレビューの目的』が頻出よ。
確認クイズ
テスト駆動開発 (TDD) の基本サイクル『Red-Green-Refactor』について、正しい順序の説明はどれか。
- テストを書く → リファクタする → 実装する
- 失敗するテストを書く (Red) → 最小限の実装で通す (Green) → 内部を整理する (Refactor)
- 実装する → テストを書く → リファクタする
- リファクタする → テストを書く → 実装する
こたえを見る
正解: 2. 失敗するテストを書く (Red) → 最小限の実装で通す (Green) → 内部を整理する (Refactor)
TDD は『失敗するテストを書く (Red) → そのテストを通す最小限のコードを書く (Green) → 重複や悪い設計を改善 (Refactor)』のサイクル。テストを先に書くことで、テスト容易な設計と高いカバレッジが自然と得られます。