Package org.springframework.test.context
@NullMarked
package org.springframework.test.context
This package contains the Spring TestContext Framework which
provides annotation-driven unit and integration testing support that is
agnostic of the actual testing framework in use. The same techniques and
annotation-based configuration used in, for example, a JUnit environment
can also be applied to tests written with TestNG, etc.
In addition to providing generic and extensible testing infrastructure, the Spring TestContext Framework provides out-of-the-box support for Spring-specific integration testing functionality such as context management and caching, dependency injection of test fixtures, and transactional test management with default rollback semantics.
-
ClassDescription
ActiveProfiles
is an annotation that can be applied to a test class to declare which active bean definition profiles should be used when loading anApplicationContext
for integration tests.Strategy interface for programmatically resolving which active bean definition profiles should be used when loading anApplicationContext
for a test class.Strategy for components that process failures related to application contexts within the Spring TestContext Framework.BootstrapContext
encapsulates the context in which the Spring TestContext Framework is bootstrapped.BootstrapUtils
is a collection of utility methods to assist with bootstrapping the Spring TestContext Framework.@BootstrapWith
is an annotation that can be applied to a test class to define metadata that is used to determine how to bootstrap the Spring TestContext Framework.ACacheAwareContextLoaderDelegate
is responsible for loading and closing application contexts, interacting transparently with aContextCache
behind the scenes.@ContextConfiguration
is an annotation that can be applied to a test class to define metadata that is used to determine how to load and configure anApplicationContext
for integration tests.ContextConfigurationAttributes
encapsulates the context configuration attributes declared via@ContextConfiguration
.Strategy interface for customizingapplication contexts
that are created and managed by the Spring TestContext Framework.@ContextCustomizerFactories
is an annotation that can be applied to a test class to configure whichContextCustomizerFactory
implementations should be registered with the Spring TestContext Framework.Enumeration of modes that dictate whether explicitly declared factories are merged with the default factories when@ContextCustomizerFactories
is declared on a class that does not inherit factories from a superclass or enclosing class.Factory for creatingContextCustomizers
.@ContextHierarchy
is an annotation that can be applied to a test class to define a hierarchy ofApplicationContexts
for integration tests.Strategy interface for loading anApplicationContext
for an integration test managed by the Spring TestContext Framework.Exception thrown when an error occurs while aSmartContextLoader
attempts to load anApplicationContext
.Registrar that is used to add properties with dynamically resolved values to theEnvironment
via aDynamicPropertyRegistry
.Registry that is used to add properties with dynamically resolved values to theEnvironment
.@DynamicPropertySource
is an annotation that can be applied to static methods in integration test classes in order to add properties with dynamic values to theEnvironment
's set ofPropertySources
.MergedContextConfiguration
encapsulates the merged context configuration declared on a test class and all of its superclasses and enclosing classes via@ContextConfiguration
,@ActiveProfiles
, and@TestPropertySource
.MethodInvoker
defines a generic API for invoking aMethod
within the Spring TestContext Framework.@NestedTestConfiguration
is an annotation that can be applied to a test class to configure how Spring test configuration annotations are processed within enclosing class hierarchies (i.e., for inner test classes).Enumeration of modes that dictate how test configuration from enclosing classes is processed for inner test classes.Strategy interface for loading anApplicationContext
for an integration test managed by the Spring TestContext Framework.@TestConstructor
is an annotation that can be applied to a test class to configure how the parameters of a test class constructor are autowired from components in the test'sApplicationContext
.Defines autowiring modes for parameters in a test constructor.TestContext
encapsulates the context in which a test is executed, agnostic of the actual testing framework in use.TestContextAnnotationUtils
is a collection of utility methods that complements the standard support already available inAnnotationUtils
andAnnotatedElementUtils
, while transparently honoring@NestedTestConfiguration
semantics.Descriptor for anAnnotation
, including the class on which the annotation is declared as well as the merged annotation instance.Untyped extension ofTestContextAnnotationUtils.AnnotationDescriptor
that is used to describe the declaration of one of several candidate annotation types where the actual annotation type cannot be predetermined.TestContextBootstrapper
defines the SPI for bootstrapping the Spring TestContext Framework.TestContextManager
is the main entry point into the Spring TestContext Framework.TestExecutionListener
defines a listener API for reacting to test execution events published by theTestContextManager
with which the listener is registered.@TestExecutionListeners
is an annotation that can be applied to a test class to configure whichTestExecutionListeners
should be registered with aTestContextManager
.Enumeration of modes that dictate whether explicitly declared listeners are merged with the default listeners when@TestExecutionListeners
is declared on a class that does not inherit listeners from a superclass or enclosing class.@TestPropertySource
is an annotation that can be applied to a test class to configure theTestPropertySource.locations()
of properties files and inlinedTestPropertySource.properties()
to be added to theEnvironment
's set ofPropertySources
for anApplicationContext
for integration tests.@TestPropertySources
is a container for one or more@TestPropertySource
declarations.