You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
24 lines
1.2 KiB
24 lines
1.2 KiB
[[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, validation, and nor |
|
do they involve any of the supporting `@InitBinder`, `@ModelAttribute`, or |
|
`@ExceptionHandler` methods. |
|
|
|
`MockMvc` aims to provide more complete testing 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` that provides a fluent API using AssertJ. Finally, you can also use it |
|
through the xref:testing/webtestclient.adoc[WebTestClient] API with MockMvc plugged in |
|
as the server to handle requests with. |
|
|
|
|
|
|