public class MockMvcBuilders extends Object
MockMvcBuilder
s.
Eclipse users: consider adding this class as a Java editor favorite. To navigate, open the Preferences and type "favorites".
Constructor and Description |
---|
MockMvcBuilders() |
Modifier and Type | Method and Description |
---|---|
static StandaloneMockMvcBuilder |
standaloneSetup(Object... controllers)
Build a
MockMvc by registering one or more @Controller 's
instances and configuring Spring MVC infrastructure programmatically. |
static DefaultMockMvcBuilder |
webAppContextSetup(WebApplicationContext context)
Build a
MockMvc using the given, fully initialized, i.e. |
public static DefaultMockMvcBuilder webAppContextSetup(WebApplicationContext context)
MockMvc
using the given, fully initialized, i.e.
refreshed, WebApplicationContext
. The DispatcherServlet
will use the context to discover Spring MVC infrastructure and
application controllers in it. The context must have been configured with
a ServletContext
.public static StandaloneMockMvcBuilder standaloneSetup(Object... controllers)
MockMvc
by registering one or more @Controller
's
instances and configuring Spring MVC infrastructure programmatically.
This allows full control over the instantiation and initialization of
controllers, and their dependencies, similar to plain unit tests while
also making it possible to test one controller at a time.
When this option is used, the minimum infrastructure required by the
DispatcherServlet
to serve requests with annotated controllers is
automatically created, and can be customized, resulting in configuration
that is equivalent to what the MVC Java configuration provides except
using builder style methods.
If the Spring MVC configuration of an application is relatively straight-forward, for example when using the MVC namespace or the MVC Java config, then using this builder might be a good option for testing a majority of controllers. A much smaller number of tests can be used to focus on testing and verifying the actual Spring MVC configuration.
controllers
- one or more @Controller
's to test