Summary

This chapter provides an overview of the JUnit 5 testing framework. Due to the limitations of JUnit 4 (monolithic architecture, impossibility of compose test runners, and limitations of test rules), a new major version of the framework was needed. In order to carry out the implementations, the JUnit Lambda project started a crowdfunding campaign in 2015. As a result, the JUnit 5 development team was born, and the GA release of the framework was released on September 10, 2017.

JUnit 5 was designed to be modern (that is, using Java 8 and Java 9 compliant from the very beginning) and modular. The three major components within JUnit 5 are: Jupiter (new programming an extension model), Platform (foundation for any testing framework executed in the JVM), and Vintage (integration with legacy JUnit 3 and 4 tests). At the time of this writing, JUnit 5 tests can be executed using build tools (Maven or Gradle) and also with IDEs (IntelliJ 2016.2+ or Eclipse 4.7+).

The extension model of JUnit 5 allows to extend the core functionality of JUnit 5 by any third party. In order to create JUnit 5 extensions, we need to implement one or several JUnit extension points (such as BeforeAllCallback, ParameterResolver, or ExecutionCondition, among others), and then register the extension in our tests using the annotation @ExtendWith.

In the next chapter 3, JUnit 5 Standard Tests, we are going to learn the basics of the Jupiter programming model. In other words, we are going to learn how to create standard JUnit 5 tests.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.224.54.136