Integration Of JUnit 5 With External Frameworks

If I have seen further than others, it is by standing upon the shoulders of giants.
- Isaac Newton

 

As described in Chapter 2, What's New in JUnit, the extension model of JUnit 5 allows us to extend the core functionality of JUnit 5 by a third party (tool vendor, developers, and so on). In the Jupiter extension model, an extension point is a callback interface that the extension implements and then registers (activates) in the JUnit 5 framework. As we will discover in this chapter, the JUnit 5 extension model can be used to provide seamless integration with existing third-party frameworks. Concretely, in this chapter, we review JUnit 5 extension for the following technologies:

  • Mockito: Mock (test double) unit testing framework.
  • Spring: A Java framework for building enterprise applications.
  • Selenium: A testing framework to automate the navigation and assessment of web applications.
  • Cucumber: Testing framework which allows us to create acceptance tests written following a Behavior-Driven Development (BDD) style.
  • Docker: A software technology which allows us to pack and run any application as a lightweight and portable container.

Moreover, we discover that the JUnit 5 extension model is not the only way to integrate with the external world. Concretely, we study how JUnit 5 can be used together with the following:

  • Android (mobile operating system based on Linux): We can run Jupiter tests in an Android project using a Gradle plugin for JUnit 5.
  • REST (architectural style for designing distributed systems): We can interact and verify REST services simply using third-party libraries (such as REST Assured or WireMock), or using the fully integrated approach of Spring (tests together with the service implementation).
..................Content has been hidden....................

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