I have some integration tests (with Selenium) which are run with failsafe maven plugin. Failsafe generates XML reports files only.
1) I want to generate HTML reports
2) I want to have a link in Jenkins to the html reports
For the 1) I installed the "maven-surefire-report-plugin" to use the failsafe-report-only goal.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.13</version>
<executions>
<execution>
<phase>post-integration-test</phase>
<goals>
<goal>failsafe-report-only</goal>
</goals>
</execution>
</executions>
</plugin>
But in the standard output, nothing seems to be generated :
[INFO]
[INFO] >>> maven-surefire-report-plugin:2.13:failsafe-report-only (default) @ BaseContrats >>>
[INFO]
[INFO] <<< maven-surefire-report-plugin:2.13:failsafe-report-only (default) @ BaseContrats <<<
[INFO]
[INFO] --- maven-surefire-report-plugin:2.13:failsafe-report-only (default) @ BaseContrats ---
In my failsafe-reports directory, I have only XML report files but not the HTML ones.
Is it the good plugin to generate html reports for failsafe?
For the 2), I installed the Jenkins plugin "Selenium HTML report" and added the post build action "Publish Selenium HTML report" and configured it with "target/failsafe-reports" value for "Selenium tests results location" parameter, but nothing is displayed in Jenkins interface (surely because my html reports file are not generated...).
Could you help me for these 2 points?
Answer for the part 1) to generate HTML reports for Failsafe.
Add the following to pom.xml
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<skipSurefireReport>${skipSurefireReport}</skipSurefireReport>
<reportsDirectories>
<reportsDirectory>${basedir}/target/failsafe-reports</reportsDirectory>
</reportsDirectories>
</configuration>
</plugin>
</plugins>
</reporting>
<properties>
<skipSurefireReport>true</skipSurefireReport>
</properties>
I am assuming you are using mvn verify to run the integration tests using failsafe-plugin.
By default, this generates the (*.txt
& *.xml
) reports in {basedir}/target/failsafe-reports. This should be specified in <reportDirectories>
. You can point to any directory which has TEST-*.xml reports.
And then run the cmd
mvn site
This would generate html reports for the Failsafe run integration tests. By default, The files would be in {basedir}/target/site/failsafe-report.html. This location be changed.