JUnit 5 Architecture
Explore the architecture of JUnit 5 and understand how it separates test execution, definition, and tooling support into distinct modules. Learn about the Jupiter module for writing tests, the Platform for launching tests, and the Vintage module for backward compatibility with JUnit 3 and 4. This lesson helps you grasp the core structure that makes JUnit 5 flexible and extensible for Java unit testing.
We'll cover the following...
Introduction
The main difference between the previous versions of JUnit and JUnit 5 is the architecture.
In the previous JUnit versions, all the functions of the software were embedded into a single JAR file. This caused everyone to use the same JAR file regardless of the use case. For example, some developers may want to use JUnit to write unit tests, while others want to use it to develop build tools—both use the same JAR file. Similarly, frameworks and integrated development environments (IDEs) also used the same JAR File.
One group wanted to use the framework to write unit tests and the other wanted to support JUnit from their IDE (IntelliJ or ...