Test dependencies

So far, we have used the Spring Initializr (http://start.spring.io) to create our social media platform. We picked several dependencies and added others along the way. But we haven't investigated test libraries.

It turns out, Spring Boot takes testing so seriously that it's not an option on the website. All projects created automatically have this test-scoped dependency:

    testCompile('org.springframework.boot:spring-boot-starter-test') 

So what's included with that single line?

  • JUnit: De-facto standard for testing Java apps
  • JSON Path: XPath for JSON
  • AssertJ: Fluent assertion library
  • Mockito: Java mocking library
  • Hamcrest: Library of matcher objects
  • JSONassert: Assertion library for JSON
  • Spring Test and Spring Boot Test: Test libraries provided by the Spring Framework and Spring Boot

In addition to these various testing libraries being automatically supplied, many optional dependencies are also included. This means that they can be added to our project's list of dependencies without specifying the version. The optional dependencies are listed as follows:

  • HTMLUnit: Testing toolkit for HTML outputs
  • Selenium: Browser automation for UI testing
  • Flapdoodle: Embedded MongoDB database for testing
  • H2: Embedded SQL database for testing
  • Spring REST Docs: Generates REST documentation using automated tests
Before we dig any deeper, it's important to understand that entire books have been written about testing applications. We'll attempt to get a good cross-section of testing and look at how Spring Boot makes certain types of tests even easier, but don't consider this chapter to be the end-all of what's possible.
..................Content has been hidden....................

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