bonigarcia
mastering-junit5
Java

Examples of the Packt book "Mastering Software Testing with JUnit 5: Comprehensive guide to develop high quality Java applications"

Last updated Jun 29, 2026
431
Stars
237
Forks
0
Issues
0
Stars/day
Attention Score
88
Language breakdown
Java 99.4%
Gherkin 0.6%
HTML 0.1%
Files click to expand
README

[![][Logo]][GitHub Repository]

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: Comprehensive guide to develop high quality Java applications], authored by [Boni García] and published by [Packt]. [![][Cover]][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.
  • 5.10: Examples using JUnit 5.10.0.
  • 5.11: Examples using JUnit 5.11.0.
  • 5.12: Examples using JUnit 5.12.0.

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-2025) is a project created and maintained by [Boni García] and licensed under the terms of the [Apache 2.0 License]. [JUnit 5]: https://junit.org/junit5/ [Boni García]: https://bonigarcia.dev/ [Logo]: https://bonigarcia.github.io/img/masteringjunit5logo.png [GitHub Repository]: https://github.com/bonigarcia/mastering-junit5 [Mastering Software Testing with JUnit 5: Comprehensive guide to develop high quality Java applications]: https://www.amazon.com/Mastering-Software-Testing-JUnit-Comprehensive-ebook/dp/B076ZQCK5Q [Packt]: https://www.packtpub.com/product/mastering-software-testing-with-junit-5/9781787285736 [Rate my cat!]: https://github.com/bonigarcia/rate-my-cat [Cover]: https://bonigarcia.dev/img/mastering-software-testing-with-junit-5.png [Apache 2.0 License]: https://www.apache.org/licenses/LICENSE-2.0
🔗 More in this category

© 2026 GitRepoTrend · bonigarcia/mastering-junit5 · Updated daily from GitHub