- All Known Subinterfaces:
 AfterAllCallback,AfterClassTemplateInvocationCallback,AfterEachCallback,AfterEachMethodAdapter,AfterTestExecutionCallback,BeforeAllCallback,BeforeClassTemplateInvocationCallback,BeforeEachCallback,BeforeEachMethodAdapter,BeforeTestExecutionCallback,ClassTemplateInvocationContextProvider,ExecutionCondition,InvocationInterceptor,LifecycleMethodExecutionExceptionHandler,ParameterResolver,PreInterruptCallback,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