@Target(value=TYPE)
@ExtendWith(value={DisabledOnNativeImageCondition.class,QuarkusTestExtension.class,NativeTestExtension.class})
@Retention(value=RUNTIME)
public @interface NativeImageTest
Annotation that indicates that this test should be run using a native image,
rather than in the JVM.
The standard usage pattern is expected to be a base test class that runs the
tests using the JVM version of Quarkus, with a subclass that extends the base
test and is annotated with this annotation to perform the same checks against
the native image.
Note that it is not possible to mix JVM and native image tests in the same test
run, it is expected that the JVM tests will be standard unit tests that are
executed by surefire, while the native image tests will be integration tests
executed by failsafe.
This also means that injection of beans into a test class using @Inject is not supported
in native image tests. Such injection is only possible in tests injected with
@QuarkusTest so the test class structure must take this into account.