WireMock for Java and JVM languages
WireMock was originally created for Java development, and there are plenty of solutions when developing applications powered by the Java Virtual Machine.
WireMock, also known as WireMock Java is the flagman implementation of WireMock functionality and specifications, maintained on the WireMock GitHub organization. It is included into many distributions (including WireMock Docker), test framework adapters and products. Most of the documentation on this website is about WireMock Java, unless specified explicitly.
Integrations with test frameworks
WireMock has integrations with many popular Java test frameworks for unit and integration testing.
- JUnit 5+ and Jupiter
- JUnit 4 and Vintage
- Testcontainers Java
- Spock - maintained outside WireMock’s organization on GitHub
WireMock Java is extensible, and there is a number of available extensions that can be included into WireMock to extend its functionality, including but not limited to request filters, observability, storage, etc.
A few popular extensions:
- Response Template Transformer
- This extension is a built-in part of the WireMock Java, but needs to be enabled explicitly
- JSON Body Transformer, Callback Simulator, Request time matcher
- 9cookies/wiremock-extensions Active
- CORS Protection Extension
Solutions specific to JVM technologies
Here are references to particular JVM technologies and languages, sorted by alphabet: