In JUnit 5, the extension API is found within the JUnit Jupiter Engine. The JUnit Team wants to allow the developer to hook to separate stages of a test life cycle by providing a single unified extension API. Upon reaching a certain life cycle phase, the Jupiter Engine will invoke all registered extensions for that phase. The developer can hook into five major extension points: Test life cycle callbacks - This allows the developer to hook to certain phases of a test life cycle Test instance post-processing - this enables the developer to hook after test instance creation by implementing the TestInstancePostProcessor interface. Conditional test execution - this enables the developer to execute the test case only after meeting certain criteria. Parameter resolution - This enables the developer to resolve a parameter after receiving it from a test method or constructor. Exception handling - A use case for exception handling is to change the testing behavior instead of throwing an exception.
in junit 5 the extension api is found within the junit jupiter engine the junit team wants to allow the developer to hook to separate stages of a test life cycle by providing a single unified extension api upon reaching a certain life cycle phase the jupiter engine will invoke all registered extensions for that phase the developer can hook into five major extension points test life cycle callbacks - this allows the developer to hook to certain phases of a test life cycle test instance post-processing - this enables the developer to hook after test instance creation by implementing the testinstancepostprocessor interface conditional test execution - this enables the developer to execute the test case only after meeting certain criteria parameter resolution - this enables the developer to resolve a parameter after receiving it from a test method or constructor exception handling - a use case for exception handling is to change the testing behavior instead of throwing an exception