25 lines
1.2 KiB
Plaintext
25 lines
1.2 KiB
Plaintext
[[mockmvc-overview]]
|
|
= Overview
|
|
:page-section-summary-toc: 1
|
|
|
|
You can write plain unit tests for Spring MVC by instantiating a controller, injecting it
|
|
with dependencies, and calling its methods. However such tests do not verify request
|
|
mappings, data binding, message conversion, type conversion, or validation and also do
|
|
not involve any of the supporting `@InitBinder`, `@ModelAttribute`, or
|
|
`@ExceptionHandler` methods.
|
|
|
|
`MockMvc` aims to provide more complete testing support for Spring MVC controllers
|
|
without a running server. It does that by invoking the `DispatcherServlet` and passing
|
|
xref:testing/unit.adoc#mock-objects-servlet["mock" implementations of the Servlet API]
|
|
from the `spring-test` module which replicates the full Spring MVC request handling
|
|
without a running server.
|
|
|
|
MockMvc is a server-side test framework that lets you verify most of the functionality of
|
|
a Spring MVC application using lightweight and targeted tests. You can use it on its own
|
|
to perform requests and to verify responses using Hamcrest or through `MockMvcTester`
|
|
which provides a fluent API using AssertJ. You can also use it through the
|
|
xref:testing/webtestclient.adoc[WebTestClient] API with MockMvc plugged in as the server
|
|
to handle requests.
|
|
|
|
|