Falta el resultado del informe: el informe no se completó correctamente con CucumberReport

2 minutos de lectura

Hay un problema similar aquí pero sin respuestas y sin progreso en su solución.

Estoy ejecutando pruebas de Selenium con Cucumber y con Gradle como herramienta de compilación. En Jenkins.

Este es mi build.gradle archivo:

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']

        }
    }
}

Quería excluir algunos escenarios de la función que estoy probando, así que agregué el '--tags', 'not @proba and not @test and not @rucno and not @nedovrseno' part a los argumentos de la tarea de Gradle.

Después de eso (y no estoy 100% seguro de que esta sea la causa), las pruebas funcionan bien en un trabajo de Jenkins, pero los informes con Complemento de informes de pepino no se están generando.

En cambio, esta es la salida de la consola de 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

Entonces, los archivos se procesan, pero falta el informe. ¿Cual podría ser el problema?

  • Me estoy poniendo Exception in thread "main" java.lang.IllegalArgumentException: Unsupported scheme: html:report at cucumber.runtime.io.MultiLoader.resources(MultiLoader.java:25) at cucumber.runtime.model.FeatureLoader.loadFromFeaturePath(FeatureLoader.java:42) at cucumber.runtime.model.FeatureLoader.load(FeatureLoader.java:36) at cucumber.runtime.model.FeatureLoader.load(FeatureLoader.java:22) at cucumber.runtime.FeaturePathFeatureSupplier.get(FeaturePathFeatureSupplier.java:23)...

    – Mate Mrše

    9 de mayo de 2019 a las 14:19

  • Actualice su pregunta con el contenido actual de task pepino().

    – MikeJRamsey56

    10 de mayo de 2019 a las 12:04

  • Pude hacerlo funcionar, pero necesitaba anteponer ‘json:report.json’ con ‘–plugin’, así: args = ['--plugin', 'pretty', '--plugin', 'json:report.json', '--glue', 'stepmethods', 'src/main/java/features', '--tags', 'not @proba and not @test and not @rucno and not @nedovrseno']

    – Mate Mrše

    10 de mayo de 2019 a las 12:11

  • Eso tiene sentido. “La opción –plugin puede especificar una clase que implementa uno o más de gherkin.formatter.Formatter,gherkin.formatter.Reporter,cucumber.api.StepDefinitionReporter”. Me pregunto si lo que necesitas es ‘–plugin’, ‘pretty, html:some/dir’,…

    – MikeJRamsey56

    13 mayo 2019 a las 13:45

¿Ha sido útil esta solución?