- All Superinterfaces:
Extension
- All Known Implementing Classes:
ExternalResourceSupport
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
BeforeEachCallback
defines the API for Extensions
that wish to provide additional behavior to tests before an individual test
and any user-defined setup methods (e.g.,
@BeforeEach
methods) for that test
have been executed.
Concrete implementations often implement AfterEachCallback
as well.
If you do not wish to have your callbacks wrapped around user-defined
setup and teardown methods, implement BeforeTestExecutionCallback
and
AfterTestExecutionCallback
instead of BeforeEachCallback
and
AfterEachCallback
.
Constructor Requirements
Consult the documentation in Extension
for details on
constructor requirements.
Wrapping Behavior
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
.
- Since:
- 5.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
beforeEach
(ExtensionContext context) Callback that is invoked before an individual test and any user-defined setup methods for that test have been executed.
-
Method Details
-
beforeEach
Callback that is invoked before an individual test and any user-defined setup methods for that test have been executed.- Parameters:
context
- the current extension context; nevernull
- Throws:
Exception
-