Skip to content

Examples of the Packt book "Mastering Software Testing with JUnit 5"

License

Notifications You must be signed in to change notification settings

bonigarcia/mastering-junit5

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status badge-jdk License badge Support badge Twitter Follow

This repository contains the code examples of JUnit 5 for the book Mastering Software Testing with JUnit 5, authored by [Boni García] and published by Packt.

These examples cover the main features of JUnit 5, such as:

  • JUnit 5 tests lifecycle.
  • Assertions.
  • Tagging and filtering tests.
  • Conditional test execution.
  • Nested and repeated tests.
  • Migration from JUnit 4.
  • Dependency injection.
  • Dynamic tests.
  • Test interfaces.
  • Test templates.
  • Parameterized tests.
  • Parallel execution.
  • Ordered tests.

Moreover, the integration with third-party technologies is also illustrated with examples, concretely:

  • Mockito (popular mock framework).
  • Spring (Java framework aimed to created enterprise applications based on dependency injection).
  • Docker (container platform technology).
  • Selenium WebDriver (test automation library for web applications).
  • Appium (test automation library for mobile devices).
  • Android (open source mobile operating system based on Linux).
  • REST services (using REST Assured, Retrofit2, or WireMock).

JUnit 5 versions

This repository has different tags, one per minor version of JUnit 5. Currently, the available tags are the following:

  • 5.0: Examples using JUnit 5.0.3. The examples of the book Mastering Software Testing with JUnit 5 are based on this version.
  • 5.1: Examples using JUnit 5.1.1.
  • 5.2: Examples using JUnit 5.2.0.
  • 5.3: Examples using JUnit 5.3.2.
  • 5.4: Examples using JUnit 5.4.2.
  • 5.5: Examples using JUnit 5.5.2.
  • 5.6: Examples using JUnit 5.6.3.
  • 5.7: Examples using JUnit 5.7.2.
  • 5.8: Examples using JUnit 5.8.2.
  • 5.9: Examples using JUnit 5.9.3.

Complete example

The project Rate my cat! contains a sample web application based on Spring Boot (Spring MVC, Thymeleaf, and Spring Data JPA) with a complete set of JUnit 5 tests (unit with Mockito, integration with Spring, and end-to-end tests with Selenium).

About

Mastering JUnit 5 (Copyright © 2017-2024) is a project created and maintained by Boni Garcia and licensed under the terms of the Apache 2.0 License.