How to generate reports for automation tests using Cluecumber?
Add the Cluecumber plugin to your pom file. As of the time of this writing the most recent version is 2.3.4 but this can be checked here for updates.
<plugin>
<groupId>com.trivago.rta</groupId>
<artifactId>cluecumber-report-plugin</artifactId>
<version>2.3.4</version>
<executions>
<execution>
<id>report</id>
<phase>post-integration-test</phase>
<goals>
<goal>reporting</goal>
</goals>
</execution>
</executions>
<configuration>
<sourceJsonReportDirectory>${project.build.directory}/cucumber-report</sourceJsonReportDirectory>
<generatedHtmlReportDirectory>${project.build.directory}/generated-report
</generatedHtmlReportDirectory>
</configuration>
</plugin>
Add json:target/cucumber-report/cucumber.json
to your Runner
, so you would have something like this:
import io.cucumber.junit.CucumberOptions;
import io.cucumber.junit.Cucumber;
import org.junit.runner.RunWith;
@RunWith(Cucumber.class)
@CucumberOptions(
features = {"."},
glue = {"my_folder.steps", "my_folder.hooks"},
monochrome = true,
plugin = {"json:target/cucumber-report/cucumber.json"}
)
public class MainRunner {
}
PS: No need for html target
mvn cluecumber-report:reporting
(exactly as it is).This will generate a folder that only appears when this command is run. It'll be under target
folder and will be called generated-report
. There you should find the index.html
file where your reports should be (right click and open it on a browser to see it).