- All Known Subinterfaces:
AfterAllCallback
,AfterEachCallback
,AfterEachMethodAdapter
,AfterTestExecutionCallback
,BeforeAllCallback
,BeforeEachCallback
,BeforeEachMethodAdapter
,BeforeTestExecutionCallback
,ExecutionCondition
,InvocationInterceptor
,LifecycleMethodExecutionExceptionHandler
,ParameterResolver
,TestExecutionExceptionHandler
,TestInstanceFactory
,TestInstancePostProcessor
,TestInstancePreConstructCallback
,TestInstancePreDestroyCallback
,TestInstantiationAwareExtension
,TestTemplateInvocationContextProvider
,TestWatcher
- All Known Implementing Classes:
ExpectedExceptionSupport
,ExternalResourceSupport
,IgnoreCondition
,TypeBasedParameterResolver
,VerifierSupport
Marker interface for all extensions.
An Extension
can be registered declaratively via
@ExtendWith
, programmatically via
@RegisterExtension
, or automatically via
the ServiceLoader
mechanism. For details on the latter,
consult the User Guide.
Constructor Requirements
Extension implementations must have a default constructor if
registered via @ExtendWith
or the ServiceLoader
. When
registered via @ExtendWith
the default constructor is not required
to be public
. When registered via the ServiceLoader
the
default constructor must be public
. When registered via
@RegisterExtension
the extension's constructors typically must be
public
unless the extension provides static
factory methods
or a builder API as an alternative to constructors.
- Since:
- 5.0