Package org.springframework.test.context.event.annotation

# Annotation Interface BeforeTestMethod

@Retention(RUNTIME) @Target({METHOD,ANNOTATION_TYPE}) @Documented @EventListener(BeforeTestMethodEvent.class) public @interface BeforeTestMethod
`@EventListener` annotation used to consume a `BeforeTestMethodEvent` published by the `EventPublishingTestExecutionListener`.

This annotation may be used on `@EventListener`-compliant methods within a Spring test `ApplicationContext` — for example, on methods in a `@Configuration` class. A method annotated with this annotation will be invoked as part of the `TestExecutionListener.beforeTestMethod(org.springframework.test.context.TestContext)` lifecycle.

Event processing can optionally be made conditional via a SpEL expression — for example, `@BeforeTestMethod("event.testContext.testMethod.name matches 'test.*'")`.

The `EventPublishingTestExecutionListener` must be registered in order for this annotation to have an effect — for example, via `@TestExecutionListeners`. Note, however, that the `EventPublishingTestExecutionListener` is registered by default.

Since:
  5.2
Author:
  Frank Scheffler, Sam Brannen
See Also:
  - `BeforeTestMethodEvent`

## Optional Element Summary

Optional Elements
Modifier and Type
Optional Element
Description
`String`
`value`
Alias for `EventListener.condition()`.

## Element Details

### value

@AliasFor(annotation=org.springframework.context.event.EventListener.class, attribute="condition") String value
Alias for `EventListener.condition()`.

Default:
  ""