Java Category
テスト
JUnit の基本から実務テストの書き方を整理する。
Category Overview
このカテゴリで扱うテーマ
JUnit 5 の基本アノテーション、アサーション、パラメータ化テストの使い方を業務テストの文脈で整理する。
Mockito の @Mock、@Spy、when/thenReturn、verify を使って依存関係をモック化し、ビジネスロジックを単体テストする方法を整理する。
AssertJ の assertThat を使い、コレクション検証、例外検証、文字列検証を JUnit 5 標準アサーションと比較しながら整理する。
Testcontainers で PostgreSQL コンテナを起動し、JDBC でリポジトリクラスの CRUD をテストする方法を整理する。
H2 Database をインメモリモードで使い、JDBC リポジトリの CRUD テストを高速かつ再現性高く実行する手法を整理する。
Given-When-Then、テストビルダー、Object Mother など、テストコードの可読性と保守性を改善する設計パターンを実装例付きで整理する。
JaCoCo によるカバレッジ測定の導入手順と、行・分岐・命令カバレッジの違い、カバレッジ率の目標設定を整理する。
テストピラミッドの考え方を整理し、@SpringBootTest と TestRestTemplate で REST API の統合テストを書く方法を解説する。
Dummy、Stub、Spy、Mock、Fake の定義と使い分けを、通知サービスを題材に Mockito と手動実装の両面から整理する。
フレイキーテスト、過剰モック、sleep 待機など、テストコードで陥りやすいアンチパターンの原因と改善方法を Before/After で比較する。