当我运行基于黄瓜的项目时,它表现得好像无法找到Steps类 - 我可以说,因为Jenkins上的日志提供了实现的代码片段。
我正在使用Gradle,我知道cuc-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
答案 0 :(得分:2)
我还想提一下,如果build.gradle中缺少依赖项,有时会出现此问题。
就我而言,build.gradle中的主要任务中缺少以下语句。
dependsOn assemble, compileTestJava
添加此项,解决了问题。
答案 1 :(得分:1)
我解决了这个问题,它与黄瓜,格拉德或詹金斯无关!我已经重命名了步骤类(大小写更改),它完全混淆了subversion,而java步骤类实际上已经丢失!!