Package io.cucumber.spring
Class SpringFactory
- java.lang.Object
-
- io.cucumber.spring.SpringFactory
-
- All Implemented Interfaces:
Container
,Lookup
,ObjectFactory
@API(status=STABLE) public final class SpringFactory extends Object implements ObjectFactory
Spring based implementation of ObjectFactory.Application beans are accessible from the step definitions using autowiring (with annotations).
The spring context can be configured by annotating one glue class with a @
CucumberContextConfiguration
and any one of the following @ContextConfiguration
, @ContextHierarchy
or @BootstrapWith
. This glue class can also be annotated with @WebAppConfiguration
or @DirtiesContext
annotation.Notes:
- SpringFactory uses Springs TestContextManager framework to manage the
spring context. The class annotated with
CucumberContextConfiguration
will be use to instantiate theTestContextManager
. - If not exactly one glue class is annotated with
CucumberContextConfiguration
an exception will be thrown. - Step definitions should not be annotated with @
Component
or other annotations that mark it as eligible for detection by classpath scanning. When a step definition class is annotated by @Component or an annotation that has the @Component stereotype an exception will be thrown
-
-
Constructor Summary
Constructors Constructor Description SpringFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addClass(Class<?> stepClass)
<T> T
getInstance(Class<T> type)
void
start()
void
stop()
-
-
-
Method Detail
-
start
public void start()
- Specified by:
start
in interfaceObjectFactory
-
stop
public void stop()
- Specified by:
stop
in interfaceObjectFactory
-
getInstance
public <T> T getInstance(Class<T> type)
- Specified by:
getInstance
in interfaceLookup
-
-