批注接口 WebMvcTest
Using this annotation only enables auto-configuration that is relevant to MVC tests. Similarly, component scanning is limited to beans annotated with:
@Controller@ControllerAdvice@JsonComponent
as well as beans that implement:
ConverterDelegatingFilterProxyRegistrationBeanErrorAttributesFilterFilterRegistrationBeanGenericConverterHandlerInterceptorHandlerMethodArgumentResolverHttpMessageConverterIDialect, if Thymeleaf is availableModule, if Jackson is availableSecurityFilterChainWebMvcConfigurerWebMvcRegistrationsWebSecurityConfigurer
By default, tests annotated with @WebMvcTest will also auto-configure Spring
Security and MockMvc (include support for HtmlUnit WebClient and Selenium
WebDriver). For more fine-grained control of MockMVC the
@AutoConfigureMockMvc annotation can be used.
Typically @WebMvcTest is used in combination with
@MockBean or
@Import to create any collaborators required by your @Controller
beans.
If you are looking to load your full application configuration and use MockMVC, you
should consider @SpringBootTest combined with
@AutoConfigureMockMvc rather than this annotation.
When using JUnit 4, this annotation should be used in combination with
@RunWith(SpringRunner.class).
- 从以下版本开始:
- 1.4.0
- 作者:
- Phillip Webb, Artsiom Yudovin
- 另请参阅:
-
可选元素概要
可选元素修饰符和类型可选元素说明Class<?>[]Specifies the controllers to test.Class<?>[]Auto-configuration exclusions that should be applied for this test.A set of exclude filters which can be used to filter beans that would otherwise be added to the application context.A set of include filters which can be used to add otherwise filtered beans to the application context.String[]Properties in form key=value that should be added to the SpringEnvironmentbefore the test runs.booleanDetermines if default filtering should be used with@SpringBootApplication.Class<?>[]Specifies the controllers to test.
-
元素详细资料
-
properties
String[] propertiesProperties in form key=value that should be added to the SpringEnvironmentbefore the test runs.- 返回:
- the properties to add
- 从以下版本开始:
- 2.1.0
- 默认值:
{}
-
value
Specifies the controllers to test. This is an alias ofcontrollers()which can be used for brevity if no other attributes are defined. Seecontrollers()for details.- 返回:
- the controllers to test
- 另请参阅:
- 默认值:
{}
-
controllers
Specifies the controllers to test. May be left blank if all@Controllerbeans should be added to the application context.- 返回:
- the controllers to test
- 另请参阅:
- 默认值:
{}
-
useDefaultFilters
boolean useDefaultFiltersDetermines if default filtering should be used with@SpringBootApplication. By default only@Controller(when no explicitcontrollersare defined),@ControllerAdviceandWebMvcConfigurerbeans are included.- 返回:
- if default filters should be used
- 另请参阅:
- 默认值:
true
-
includeFilters
ComponentScan.Filter[] includeFiltersA set of include filters which can be used to add otherwise filtered beans to the application context.- 返回:
- include filters to apply
- 默认值:
{}
-
excludeFilters
ComponentScan.Filter[] excludeFiltersA set of exclude filters which can be used to filter beans that would otherwise be added to the application context.- 返回:
- exclude filters to apply
- 默认值:
{}
-
excludeAutoConfiguration
@AliasFor(annotation=ImportAutoConfiguration.class, attribute="exclude") Class<?>[] excludeAutoConfigurationAuto-configuration exclusions that should be applied for this test.- 返回:
- auto-configuration exclusions to apply
- 默认值:
{}
-