我在我的项目中使用了 Spring、Cucumber 和 Junit。测试运行器使用 @ContextConfiguration
注释,因此它在运行套件之前创建一个 Spring 上下文。
我希望 Spring 将 Step Definition 类实例化为 Spring bean,这样我就可以注入(inject)依赖项并在步骤中使用它们。可以通过将类声明为 @Component
来完成。
到目前为止一切顺利。问题是 Cucumber 将再次实例化步骤定义,并且不会使用 Spring 已经创建的注入(inject)依赖项的 bean。
让 Cucumber 使用 Spring 实例化的步骤定义有什么想法吗?
最佳答案
您的运行器类应该使用 @RunWith(Cucumber.class)
进行注释,而不是使用 @ContextConfiguration
。然后,Cucumber 应该扫描并相应地实例化您的 Spring 上下文。
关于java - cucumber 步 Spring Bean ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27361651/