public class SpringBootContextLoader extends AbstractContextLoader
ContextLoader that can be used to test Spring Boot applications (those that
normally startup using SpringApplication). Although this loader can be used
directly, most test will instead want to use it with
@SpringBootTest.
The loader supports both standard MergedContextConfiguration as well as
WebMergedContextConfiguration. If WebMergedContextConfiguration is used
the context will either use a mock servlet environment, or start the full embedded web
server.
If @ActiveProfiles are provided in the test class they will be used to create
the application context.
SpringBootTest| Constructor and Description |
|---|
SpringBootContextLoader() |
| Modifier and Type | Method and Description |
|---|---|
protected Class<?>[] |
detectDefaultConfigurationClasses(Class<?> declaringClass)
Detect the default configuration classes for the supplied test class.
|
protected ConfigurableEnvironment |
getEnvironment()
Builds a new
ConfigurableEnvironment instance. |
protected List<ApplicationContextInitializer<?>> |
getInitializers(MergedContextConfiguration config,
SpringApplication application)
Return the
initializers that will be applied
to the context. |
protected String[] |
getInlinedProperties(MergedContextConfiguration config) |
protected String |
getResourceSuffix() |
protected String[] |
getResourceSuffixes() |
protected SpringApplication |
getSpringApplication()
Builds new
SpringApplication instance. |
ApplicationContext |
loadContext(MergedContextConfiguration config) |
ApplicationContext |
loadContext(String... locations) |
void |
processContextConfiguration(ContextConfigurationAttributes configAttributes) |
customizeContext, generateDefaultLocations, isGenerateDefaultLocations, modifyLocations, prepareContext, processLocationspublic ApplicationContext loadContext(MergedContextConfiguration config) throws Exception
Exceptionprotected SpringApplication getSpringApplication()
SpringApplication instance. You can
override this method to add custom behaviorSpringApplication instanceprotected ConfigurableEnvironment getEnvironment()
ConfigurableEnvironment instance. You can override this method
to return something other than StandardEnvironment if necessary.ConfigurableEnvironment instanceprotected String[] getInlinedProperties(MergedContextConfiguration config)
protected List<ApplicationContextInitializer<?>> getInitializers(MergedContextConfiguration config, SpringApplication application)
initializers that will be applied
to the context. By default this method will adapt context
customizers, add application
initializers and add
initializers
specified on the test.config - the source context configurationapplication - the application instancepublic void processContextConfiguration(ContextConfigurationAttributes configAttributes)
processContextConfiguration in interface SmartContextLoaderprocessContextConfiguration in class AbstractContextLoaderprotected Class<?>[] detectDefaultConfigurationClasses(Class<?> declaringClass)
AnnotationConfigContextLoaderUtils.detectDefaultConfigurationClasses(java.lang.Class<?>).declaringClass - the test class that declared @ContextConfigurationnullAnnotationConfigContextLoaderUtilspublic ApplicationContext loadContext(String... locations) throws Exception
Exceptionprotected String[] getResourceSuffixes()
getResourceSuffixes in class AbstractContextLoaderprotected String getResourceSuffix()
getResourceSuffix in class AbstractContextLoader