Skip to content

Latest commit

 

History

History
36 lines (31 loc) · 3.42 KB

File metadata and controls

36 lines (31 loc) · 3.42 KB
id title slug sidebar_label
advanced_extensions
Advanced Extensions
advanced-extensions.html
Advanced Extensions

This table lists more advanced extensions that can be used to hook into the Engine itself to:

  • intercept tests, skipping them, and modify test results
  • intercept specs specs skipping them if required
  • post process spec instances after instantiation
  • modify the coroutine context used by specs and tests
  • apply custom instantiation logic
  • filter specs and tests
  • adjust test output
Extension Description
ConstructorExtension Provides custom logic to instantiate spec classes. An example is the Spring extension constructor extension which autowire's spring beans.
TestCaseExtension Intercepts calls to a test, can skip a test, override the test result, and modify the coroutine context.
SpecExtension Intercepts calls to a spec, can skip a spec, and modify the coroutine context.
SpecRefExtension Intercepts calls to a spec before it is instantiated. Can skip instantiation.
DisplayNameFormatterExtension Can customize the display names of tests used in test output.
EnabledExtension Can provide custom logic to determine if a test is enabled or disabled.
ProjectExtension Intercepts calls to the test engine before a project starts.
SpecExecutionOrderExtension Can sort specs before execution begins to provide a custom spec execution order.
TagExtension Can provide active tags from arbitrary sources.
InstantiationErrorListener Is notified when a spec fails to be instantiated due to some exception.
InstantiationListener Is notified when a spec is successfully instantiated.
PostInstantiationExtension Intercepts specs when they are instantiated, can replace the spec instance and modify coroutine context.
IgnoredSpecListener Is notified when a spec is skipped.
SpecFilter Can provide custom logic to skip a spec.
TestFilter Can provide custom logic to skip a test.