Annotation Interface MybatisTest
@Target(TYPE)
@Retention(RUNTIME)
@Documented
@Inherited
@BootstrapWith(org.mybatis.spring.boot.test.autoconfigure.MybatisTestContextBootstrapper.class)
@ExtendWith(org.springframework.test.context.junit.jupiter.SpringExtension.class)
@OverrideAutoConfiguration(enabled=false)
@TypeExcludeFilters(org.mybatis.spring.boot.test.autoconfigure.MybatisTypeExcludeFilter.class)
@Transactional
@AutoConfigureCache
@AutoConfigureMybatis
@AutoConfigureTestDatabase
@ImportAutoConfiguration
public @interface MybatisTest
Annotation that can be used in combination with
@RunWith(SpringRunner.class)
(JUnit 4) and
@ExtendWith(SpringExtension.class)
(JUnit 5) for a typical mybatis test. Can be used when a test focuses
only on mybatis-based components. Since 2.0.1, If you use this annotation on JUnit 5,
@ExtendWith(SpringExtension.class)
can omit on your test class.
Using this annotation will disable full auto-configuration and instead apply only configuration relevant to mybatis tests.
By default, tests annotated with @MybatisTest
will use an embedded in-memory database (replacing any explicit
or usually auto-configured DataSource). The @AutoConfigureTestDatabase
annotation
can be used to override these settings.
If you are looking to load your full application configuration, but use an embedded database, you should consider
@SpringBootTest
combined with @AutoConfigureTestDatabase
rather than this annotation.
- Since:
- 1.2.1
- Author:
- wonwoo
- See Also:
-
Optional Element Summary
Modifier 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 SpringEnvironment
before the test runs.boolean
Determines if default filtering should be used with@SpringBootApplication
.
-
Element Details
-
properties
String[] propertiesProperties in form key=value that should be added to the SpringEnvironment
before 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 no beans 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:
- {}
-