java - cucumber 步 Spring Bean

标签 java spring cucumber cucumber-jvm

我在我的项目中使用了 Spring、Cucumber 和 Junit。测试运行器使用 @ContextConfiguration 注释,因此它在运行套件之前创建一个 Spring 上下文。

我希望 SpringStep 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/

相关文章:

java - 同一SQL表中的项目比较

java - 只需要在 Android 中上传 pdf 或任何 doc 类型格式

java - 如何在 Angular 6 中使用 Spring MVC 的 ModelAndView 响应?

java - 使用 hibernate anvers 时如何创建自定义字段

java - @Before 不会在 java Cucumber Step 中执行

maven - 当文件存在时使用通配符激活配置文件

java - 动态创建的 View 无法正确显示在 GridLayout 中

java - Spring Boot 应用程序在作为 jar 运行时看不到 bean

ruby - 如何在有和没有javascript的情况下运行 cucumber 场景避免代码重复

java - 匹配一个单独出现的字符