Skip to content
 
 

Repository files navigation

Full Overview of the Java Testing Ecosystem

Maven Build

 Book Cover

This repository contains the source code for the book 30 Testing Tools & Libraries Every Java Developer Must Know.

Current Status: 15/30 tools and libraries are covered. The next release (20/30) is scheduled for Q4 2021.

Grab your copy here.

Goals of the Book

  • Enrich your existing testing toolbox
  • Use the right tool for the job
  • Inform about various tools & libraries of the Java testing ecosystem
  • Cookbook-style introduction of each tool & library
  • Hands-on testing examples that apply for testing any Java application

Build & Test

Requirements:

  • Java 11: java -version
  • A running Docker engine (required for Testcontainers): docker info

Build the project and run all tests with:

cd spring-boot-example
./mvnw verify

cd jakarta-ee-example
./mvnw verify

Content

The book uses a Spring Boot and Jakarta EE application to demonstrate the different tools & libraries. Both sample applications only use a minimal subset of Spring Boot/Jakarta EE features so that you can easily apply the knowledge to your tech stack.

Test Frameworks

  • JUnit 4
  • JUnit 5
  • TestNG
  • Spock (upcoming)

Assertion Libraries

  • AssertJ
  • JsonPath
  • Hamcrest
  • XMLUnit
  • JSONAssert
  • REST Assured

Mocking Frameworks

  • Mockito
  • WireMock
  • MockWebServer
  • PowerMock

Test Infrastructure

  • Testcontainers
  • LocalStack
  • MicroShed Testing (upcoming)
  • Citrus
  • GreenMail
  • Selenium

Utility Libraries

  • Selenide
  • Pact
  • Spring Cloud Contract
  • Diffblue
  • FitNesse
  • Awaitility

Performance Testing

  • JMH
  • JMeter (upcoming)
  • Gatling (upcoming)
  • Quick Perf

About

🔧 Testing Tools & Libraries Every Java Developer Must Know

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages