@FunctionalInterface
@API(status=STABLE,
since="5.0")
public interface AfterTestExecutionCallback
extends Extension
AfterTestExecutionCallback defines the API for Extensions that wish to provide additional behavior to tests
immediately after an individual test has been executed but
before any user-defined teardown methods (e.g.,
@AfterEach methods) have been executed
for that test.
Concrete implementations often implement BeforeTestExecutionCallback
as well. If you wish to have your callbacks wrapped around user-defined
setup and teardown methods, implement BeforeEachCallback and
AfterEachCallback instead of BeforeTestExecutionCallback and
AfterTestExecutionCallback.
Consult the documentation in Extension for details on
constructor requirements.
JUnit Jupiter guarantees wrapping behavior for multiple
registered extensions that implement lifecycle callbacks such as
BeforeAllCallback, AfterAllCallback,
BeforeEachCallback, AfterEachCallback,
BeforeTestExecutionCallback, and AfterTestExecutionCallback.
That means that, given two extensions Extension1 and
Extension2 with Extension1 registered before
Extension2, any "before" callbacks implemented by Extension1
are guaranteed to execute before any "before" callbacks implemented by
Extension2. Similarly, given the two same two extensions registered
in the same order, any "after" callbacks implemented by Extension1
are guaranteed to execute after any "after" callbacks implemented by
Extension2. Extension1 is therefore said to wrap
Extension2.
Test,
BeforeTestExecutionCallback,
BeforeEachCallback,
AfterEachCallback,
BeforeAllCallback,
AfterAllCallback| Modifier and Type | Method and Description |
|---|---|
void |
afterTestExecution(ExtensionContext context)
Callback that is invoked immediately after an individual test has
been executed but before any user-defined teardown methods have been
executed for that test.
|
void afterTestExecution(ExtensionContext context) throws java.lang.Exception
context - the current extension context; never nulljava.lang.Exception