首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Spring集成到Cucumber中

如何将Spring集成到Cucumber中
EN

Stack Overflow用户
提问于 2012-02-23 18:53:13
回答 4查看 17.3K关注 0票数 8

我目前正在尝试将Spring集成到我的Cucumber测试中。我有一个自定义的SpringFactory,如中所述:

http://www.zsoltfabok.com/blog/2012/01/cucumber-jvm-di/

但是代码没有被调用。用我的测试“连接”工厂的最好方法是什么?

从已删除答案的评论中澄清:主要问题是我的测试将Cucumber作为主要跑步者,即@RunWith(Cucumber.class),所以不能在这里使用SpringJUnit4ClassRunner。上面的链接中描述了这一点,但没有描述如何读取cucumber.xml。我添加了一个新的SpringFactory,但它没有读取XML文件。

更新:通过添加以下内容,实际上已经走得更远:

代码语言:javascript
复制
    <dependency>
        <groupId>info.cukes</groupId>
        <artifactId>cucumber-spring</artifactId>
        <version>1.0.0.RC15</version>
    </dependency>   

然而,我有@Autowired变量,因为测试是由Cucumber运行的,所以没有注入这些变量。

其他人也有这个问题吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-02-24 07:20:18

在谷歌上快速搜索“黄瓜弹簧集成”,我会看到herehere。如果你使用的是cuke4duke,这看起来是一种更简单的方法。

该示例似乎表明,默认情况下,cuke4duke将从类路径的基址加载cucumber.xml。这是一个Spring配置文件,其中必须包含使用@StepDefinition注释的类的component-scan

您不需要提供SpringFactory,也不需要使用@RunWith注释,只需提供一些Spring配置和一个或多个jvm属性即可。

票数 5
EN

Stack Overflow用户

发布于 2014-04-25 18:38:02

更新: cuke4duke项目现在已经过时了,已经被Cucumber-JVM所取代。

我也遇到了同样的问题,根本原因是cucumber- cucumber.xml -1.1.5.jar中的SpringFactory没有读取弹簧。Spring DI无声地失败了,导致了NPE。从submission 448开始,Cucumber SpringFactory不再加载cucumber.xml,您需要在所有步骤定义类中包含@ContextConfiguration("classpath*:cucumber.xml")

票数 9
EN

Stack Overflow用户

发布于 2012-10-04 20:41:26

我刚看过你的问题。最有可能的情况是缺少cucumber-spring模块依赖项。我已经更新了存储库,现在所有的依赖项都应该没问题了(我使用的是ivy)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9411591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档