
本コースでは、Javaエンジニアが実務で必要になるJUnit 5を使ったテスト実装を、基礎からSpring Boot連携まで一通り学習していきます!
まずは、JUnit 5の基本的な考え方から始め、assertEquals、assertThrows、assertTrue、assertFalse、assertNull、assertNotNull、assertAll、failなど、テストコードを書くうえでよく使うアサーションを順番に確認します。
単にメソッドの使い方を覚えるだけでなく、「どのような場面で、どの検証方法を使うのか」が理解できるように、サンプルコードとハンズオンを通じて進めていきます。
その後、テストコードを整理・効率化するための機能として、@BeforeEach、@AfterEach、@BeforeAll、@AfterAll、@Tag、@Nested、@ParameterizedTest、@ValueSource、@CsvSource、@MethodSourceなども扱います。
複数のテストケースを効率よく書く方法や、テストの分類、事前条件を使った実行制御など、実務でも使いやすいJUnit 5の機能を学べます。
Mockitoを使ったモック・スタブ・スパイのテストも扱います。
@ExtendWith、@Mock、@InjectMocksを使った準備方法、when().thenReturn()、when().thenThrow()、doNothing()、doAnswer()によるスタブ設定、verify、inOrder、引数マッチングによる呼び出し検証まで、外部クラスに依存する処理をどのようにテストするかを学習します。
Spring Bootアプリケーションのテストにも進みます。
Controllerのテスト、API全体を対象にしたテスト、H2インメモリDBを使ったテスト、JdbcTemplateによるRepository処理、DBUnitを使ったDB状態の比較まで扱います。データベースを含む処理をどのようにテストすればよいかを、実装しながら確認していきます。
また、Spring Batchのテストとして、Job単位での実行確認とStep単体での実行確認も扱います。
本コースは、スライドによる基礎説明とハンズオン形式の実装を組み合わせて進めます。JUnit 5を初めて学ぶ方でも、Javaのテストコードの書き方から、Mockito、Spring Boot、DBUnit、Spring Batchのテストまで段階的に理解できる構成にしています。
また、実務で役立つテスト手法を必要に応じて追加・改善していく予定です。
Javaのテストを体系的に学びたい方、JUnit 5を基礎から実務レベルまで身につけたい方におすすめの講座です。