public interface TestContext extends AttributeAccessor, Serializable
TestContext encapsulates the context in which a test is executed,
 agnostic of the actual testing framework in use.| Modifier and Type | Method and Description | 
|---|---|
ApplicationContext | 
getApplicationContext()
Get the application context for this
 test context, possibly cached. 
 | 
Class<?> | 
getTestClass()
Get the test class for this test context. 
 | 
Throwable | 
getTestException()
Get the exception that was thrown during execution
 of the test method. 
 | 
Object | 
getTestInstance()
Get the current test instance for this test context. 
 | 
Method | 
getTestMethod()
Get the current test method for this test context. 
 | 
void | 
markApplicationContextDirty(DirtiesContext.HierarchyMode hierarchyMode)
Call this method to signal that the application
 context associated with this test context is dirty and should be
 removed from the context cache. 
 | 
void | 
updateState(Object testInstance,
           Method testMethod,
           Throwable testException)
Update this test context to reflect the state of the currently executing
 test. 
 | 
attributeNames, getAttribute, hasAttribute, removeAttribute, setAttributeApplicationContext getApplicationContext()
Implementations of this method are responsible for loading the application context if the corresponding context has not already been loaded, potentially caching the context as well.
IllegalStateException - if an error occurs while retrieving the
 application contextClass<?> getTestClass()
null)Object getTestInstance()
Note: this is a mutable property.
null)updateState(Object, Method, Throwable)Method getTestMethod()
Note: this is a mutable property.
null)updateState(Object, Method, Throwable)Throwable getTestException()
Note: this is a mutable property.
null if no
 exception was thrownupdateState(Object, Method, Throwable)void markApplicationContextDirty(DirtiesContext.HierarchyMode hierarchyMode)
Do this if a test has modified the context — for example, by modifying the state of a singleton bean, modifying the state of an embedded database, etc.
hierarchyMode - the context cache clearing mode to be applied if the
 context is part of a hierarchy (may be null)void updateState(Object testInstance, Method testMethod, Throwable testException)
Caution: concurrent invocations of this method might not be thread-safe, depending on the underlying implementation.
testInstance - the current test instance (may be null)testMethod - the current test method (may be null)testException - the exception that was thrown in the test method, or
 null if no exception was thrown