2012-02-17 77 views
3

我想从Gradle运行Cucumber-jvm。但是,无论我做什么,我都无法获得实际运行的功能。当其他JUnit测试运行时,它们总是被跳过。我的功能在src/test/resources,我在src/test/java中进行了JUnit测试,并指定了@RunWith(Cucumber.class)@Feature(Myfeature.feature)属性。这是我的Gradle脚本:Gradle不拿起黄瓜-jvm

repositories { 
    mavenCentral() 
} 

dependencies { 
    testCompile group: 'junit', name: 'junit', version: '4.+' 
    testCompile group: 'info.cukes', name: 'cucumber-junit', version: '1.0.0.RC13' 
    testCompile group: 'info.cukes', name: 'cucumber-java', version: '1.0.0.RC13' 
    testCompile group: 'info.cukes', name: 'cucumber-picocontainer', version: '1.0.0.RC13' 
    testCompile group: 'info.cukes', name: 'cucumber-core', version: '1.0.0.RC13' 
    testCompile group: 'org.picocontainer', name: 'picocontainer', version: '2.10.2' 
} 

如果有人有一个想法该怎么做来解决这个问题,将不胜感激。 Cucumber-jvm文档不存在。

+0

所以看来,这个问题是与黄瓜RC13。我更新了RC15,现在我得到了一个例外,Cucumber找不到我的功能.'cucumber.runtime.CucumberException:在[Testfeature.feature]' – 2012-02-17 17:14:10

回答

3

我终于得到了这个工作。应该对每个人都好,了解如何一起使用Gradle和Cucumber-jvm。首先你需要RC15开始,其他版本有我不太明白的问题。你的测试编译部分需要看起来像我上面的。

接下来在src/test/java/path/of/package/中创建一个测试。我没有使用其他语言进行测试。测试需要使用JUnit @RunWith和Cucumber-Jvm的@Feature(value="featurefile.feature")属性。

将你的.feature文件放在src/test/resources的根目录下。由于某些原因,Cucumber不会在子文件夹中选取文件。

希望能为人们节省很多时间。

+3

没有找到任何功能如果要将功能文件放在子目录中,只需更改@Feature属性匹配从resources文件夹下面开始的路径。所以如果是src/test/resources/com/yourapp/features/featurefile.feature。然后该属性将是@Feature(value =“com/yourapp/features/featurefile.feature”) – 2012-02-21 04:31:46