Annotation Interface JsonTest
@Target(TYPE)
@Retention(RUNTIME)
@Documented
@Inherited
@BootstrapWith(org.springframework.boot.test.autoconfigure.json.JsonTestContextBootstrapper.class)
@ExtendWith(org.springframework.test.context.junit.jupiter.SpringExtension.class)
@OverrideAutoConfiguration(enabled=false)
@TypeExcludeFilters(org.springframework.boot.test.autoconfigure.json.JsonTypeExcludeFilter.class)
@AutoConfigureJsonTesters
@ImportAutoConfiguration
public @interface JsonTest
Annotation for a JSON test that focuses only on JSON serialization.
Using this annotation only enables auto-configuration that is relevant to JSON tests. Similarly, component scanning is limited to beans annotated with:
@JacksonComponent
as well as beans that implement:
JacksonModule, if Jackson is available
By default, tests annotated with JsonTest will also initialize
JacksonTester, JsonbTester and GsonTester fields. More
fine-grained control can be provided through the
@AutoConfigureJsonTesters annotation.
When using JUnit 4, this annotation should be used in combination with
@RunWith(SpringRunner.class).
- Since:
- 1.4.0
- See Also:
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionClass<?>[]Auto-configuration exclusions that should be applied for this test.org.springframework.context.annotation.ComponentScan.Filter[]A set of exclude filters which can be used to filter beans that would otherwise be added to the application context.org.springframework.context.annotation.ComponentScan.Filter[]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.
-
Element Details
-
properties
String[] propertiesProperties in form key=value that should be added to the SpringEnvironmentbefore the test runs.- Returns:
- the properties to add
- Since:
- 2.1.0
- Default:
{}
-
useDefaultFilters
boolean useDefaultFiltersDetermines if default filtering should be used with@SpringBootApplication. By default, only@JacksonComponentandJacksonModulebeans are included.- Returns:
- if default filters should be used
- See Also:
- Default:
true
-
includeFilters
org.springframework.context.annotation.ComponentScan.Filter[] includeFiltersA set of include filters which can be used to add otherwise filtered beans to the application context.- Returns:
- include filters to apply
- Default:
{}
-
excludeFilters
org.springframework.context.annotation.ComponentScan.Filter[] excludeFiltersA set of exclude filters which can be used to filter beans that would otherwise be added to the application context.- Returns:
- exclude filters to apply
- Default:
{}
-
excludeAutoConfiguration
@AliasFor(annotation=org.springframework.boot.autoconfigure.ImportAutoConfiguration.class, attribute="exclude") Class<?>[] excludeAutoConfigurationAuto-configuration exclusions that should be applied for this test.- Returns:
- auto-configuration exclusions to apply
- Default:
{}
-