mastering-junit5
mastering-junit5 copied to clipboard
Examples of the Packt book "Mastering Software Testing with JUnit 5"
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.
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
This is a project made by Boni García, Visiting Professor at Universidad Carlos III de Madrid, Spain. Copyright © 2017-2022.