Jenkins 缺少报告结果-报告未使用CucumberReport成功完成

Jenkins 缺少报告结果-报告未使用CucumberReport成功完成,jenkins,gradle,cucumber,report,cucumber-jvm,Jenkins,Gradle,Cucumber,Report,Cucumber Jvm,有一个类似的问题,但没有答案,也没有解决它的进展 我使用Cucumber和Gradle作为构建工具运行Selenium测试。在詹金斯 这是我的build.gradle文件: task cucumber() { dependsOn assemble, compileTestJava doLast{ javaexec { main = "cucumber.api.cli.Main" classpath = configu

有一个类似的问题,但没有答案,也没有解决它的进展

我使用Cucumber和Gradle作为构建工具运行Selenium测试。在詹金斯

这是我的
build.gradle
文件:

task cucumber() {
    dependsOn assemble, compileTestJava
    doLast{
        javaexec {
            main = "cucumber.api.cli.Main"
            classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
            args = ['--plugin', 'pretty', '--glue', 'stepmethods', 'src/main/java/features', '--tags', 'not @proba and not @test and not @rucno and not @nedovrseno']

        }
    }
}
我想从我正在测试的功能中排除一些场景,所以我在Gradle任务参数中添加了
'--tags',not@proba and not@test and not@rucno and not@nedovrseno'
部分

在那之后(我不是100%确定这是原因),测试在Jenkins作业中运行良好,但是没有生成带有的报告

相反,这是Jenkins控制台输出:

15:09:02 BUILD SUCCESSFUL in 1m 58s
15:09:02 3 actionable tasks: 3 executed
15:09:02 Build step 'Invoke Gradle script' changed build result to SUCCESS
15:09:02 [CucumberReport] Using Cucumber Reports version 4.6.0
15:09:02 [CucumberReport] JSON report directory is ""
15:09:02 [CucumberReport] Copied 1 json files from workspace "C:\Users\me\.jenkins\workspace\Project Name" to reports directory "C:\Users\me\.jenkins\jobs\Project Name\builds\12\cucumber-html-reports\.cache"
15:09:02 [CucumberReport] Copied 4 properties files from workspace "C:\Users\me\.jenkins\workspace\Project Name" to reports directory "C:\Users\me\.jenkins\jobs\Project Name\builds\12\cucumber-html-reports\.cache"
15:09:02 [CucumberReport] Processing 1 json files:
15:09:02 [CucumberReport] C:\Users\me\.jenkins\jobs\Project Name\builds\12\cucumber-html-reports\.cache\report.json
15:09:02 [CucumberReport] Missing report result - report was not successfully completed
15:09:02 [CucumberReport] Build status is left unchanged
15:09:02 Finished: SUCCESS
因此,文件已被处理,但报告已丢失。可能是什么问题?

编辑

在字符串中添加第二个“--plugin”来解释OP的发现

删除了其他示例


试一试


您没有指定要生成哪个报告,也没有指定要在哪里生成报告。这为您提供了漂亮的html。

我在cucumber.runtime.model.FeatureLoader.load的cucumber.runtime.io.MultiLoader.resources(MultiLoader.java:25)中得到线程“main”java.lang.IllegalArgumentException中的
异常:不受支持的方案:html:report at cucucumber.runtime.io.MultiLoader.resources(MultiLoader.java:25)(FeatureLoader.java:36)在cucumber.runtime.model.FeatureLoader.load(FeatureLoader.java:22)在cucumber.runtime.FeaturePathFeatureSupplier.get(FeaturePathFeatureSupplier.java:23).
请使用任务cucucumber()的当前内容更新您的问题。我能够让它工作,但我需要在“json:report.json”之前加上“--plugin”,比如:
args=['--plugin”,“pretty”,“plugin”,“json:report.json”,“glue”,“stepmethods”,“src/main/java/features”,“tags”,“not@proba和not@test”,“not@rucno和not@nedovrseno”]
,这很有意义。“--plugin选项可以指定一个类来实现一个或多个gherkin.formatter.formatter、gherkin.formatter.Reporter、cucumber.api.StepDefinitionReporter”。我想知道您需要的是“--plugin”、“pretty、html:some/dir”。。。
task cucumber() {
    dependsOn assemble, compileTestJava
    doLast{
        javaexec {
            main = "cucumber.api.cli.Main"
            classpath = configurations.cucumberRuntime + sourceSets.main.output + sourceSets.test.output
            args = ['--plugin', 'pretty', '--plugin', 'html:some/dir', '--glue', 'stepmethods', 'src/main/java/features', '--tags', 'not @proba and not @test and not @rucno and not @nedovrseno']

        }
    }
}