@Target(value=TYPE) @Retention(value=RUNTIME) @Documented @Inherited @BootstrapWith(value=org.springframework.boot.test.autoconfigure.web.client.RestClientTestContextBootstrapper.class) @ExtendWith(value=org.springframework.test.context.junit.jupiter.SpringExtension.class) @OverrideAutoConfiguration(enabled=false) @TypeExcludeFilters(value=RestClientTypeExcludeFilter.class) @AutoConfigureCache @AutoConfigureWebClient @AutoConfigureMockRestServiceServer @ImportAutoConfiguration public @interface RestClientTest
RestTemplateBuilder.
Using this annotation will disable full auto-configuration and instead apply only
configuration relevant to rest client tests (i.e. Jackson or GSON auto-configuration
and @JsonComponent beans, but not regular @Component beans).
By default, tests annotated with RestClientTest will also auto-configure a
MockRestServiceServer. For more fine-grained control the
@AutoConfigureMockRestServiceServer
annotation can be used.
If you are testing a bean that doesn't use RestTemplateBuilder but instead
injects a RestTemplate directly, you can add
@AutoConfigureWebClient(registerRestTemplate=true).
When using JUnit 4, this annotation should be used in combination with
@RunWith(SpringRunner.class).
| Modifier and Type | Optional Element and Description |
|---|---|
Class<?>[] |
components
Specifies the components to test.
|
Class<?>[] |
excludeAutoConfiguration
Auto-configuration exclusions that should be applied for this test.
|
ComponentScan.Filter[] |
excludeFilters
A set of exclude filters which can be used to filter beans that would otherwise be
added to the application context.
|
ComponentScan.Filter[] |
includeFilters
A set of include filters which can be used to add otherwise filtered beans to the
application context.
|
String[] |
properties
Properties in form key=value that should be added to the Spring
Environment before the test runs. |
boolean |
useDefaultFilters
Determines if default filtering should be used with
@SpringBootApplication. |
Class<?>[] |
value
Specifies the components to test.
|
public abstract String[] properties
Environment before the test runs.@AliasFor(value="components") public abstract Class<?>[] value
components() which
can be used for brevity if no other attributes are defined. See
components() for details.components()public abstract boolean useDefaultFilters
@SpringBootApplication. By default only
@JsonComponent and Module beans are included.includeFilters(),
excludeFilters()public abstract ComponentScan.Filter[] includeFilters
public abstract ComponentScan.Filter[] excludeFilters
@AliasFor(annotation=ImportAutoConfiguration.class, attribute="exclude") public abstract Class<?>[] excludeAutoConfiguration
Copyright © 2020 Pivotal Software, Inc.. All rights reserved.