【发布时间】:2014-07-14 08:05:02
【问题描述】:
当我运行基于黄瓜的项目时,它的行为就好像找不到 Steps 类一样 - 我可以判断,因为 Jenkins 上的日志提供了用于实现的代码 sn-ps。
我正在使用 Gradle,我知道 cucumber-jvm 存在问题。
构建文件的相关部分:
task cucumber(type: JavaExec) {
dependsOn assemble, compileTestJava
main = "cucumber.api.cli.Main"
classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
args = ['-f', 'pretty', '--glue', 'steps', 'src/test/resources']
systemProperties = System.getProperties()
}
我不明白为什么通过 Jenkins 运行相同的命令 (./gradlew clean cucumber) 会失败?
这是 Jenkins 的输出:
+ ./gradlew -Dapk=/Users/rakesh/workspace1/AcmeApp_4_10_Tiles/bin/AcmeApp_4_10_Tiles.apk clean cucumber
:clean
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar
:assemble
:compileTestJava
:cucumber
Feature: Thrid party request for the Landing page.
TODO: additional requests for box connection
...
You can implement missing steps with the snippets below:
@Given("^the user chooses not to login$")
...
BUILD SUCCESSFUL
Total time: 8.074 secs
$ /Users/rakesh/Apps/adt-bundle-mac-x86_64-20131030/sdk/platform-tools/adb disconnect emulator-5812
[android] Stopping Android emulator
[android] Archiving emulator log
$ /Users/rakesh/Apps/adt-bundle-mac-x86_64-20131030/sdk/platform-tools/adb kill-server
Finished: SUCCESS
【问题讨论】:
-
请提供有关失败的所有相关详细信息(确切的错误消息、堆栈跟踪、Gradle 版本等)。
-
没有错误。当黄瓜找不到步骤时,它会打印出它正在执行的示例代码。 gradle 的版本是 1.9。
-
即使我想使用包装器,我是否必须安装 Jenkins gradle 插件?
-
Jenkins Gradle 插件是可选的(带或不带包装器)。
-
是的,我安装了插件,但没有任何区别。
标签: java jenkins gradle cucumber-jvm