Richlewis
Richlewis

Reputation: 15374

Merging results from different Cucumber HTML Reports

When running our test suite we perform a re-run which gives us 2 HTML reports at the end. What I am looking to do is have one final report so that I can then share it with stakeholders etc.

Can I merge the 2 reports so that in the first run a test had failed but in the second run it had passed, the report shows the test has passed?

I basically want to merge the reports to show a final outcome of the test run. Thanks

Upvotes: 0

Views: 2996

Answers (1)

Filipe Freire
Filipe Freire

Reputation: 833

By only showing the report that passed you'd be throwing away a valuable piece of information: that there is an issue with the test suite making it flaky during execution. It can be something to do with the architecture or design of a particular test, or maybe the wait/sleep periods for some elements. Or, in some cases, the application we're testing has some sort of issue that a lot of times goes unchecked.

You should treat a failing report with as much respect as a passing one. I'd share with the stakeholders both reports and a short analysis of why the tests are failing in the first one(s), or why do they usually fail, and a proposal/strategy to fix the failure.

Regarding the merging of the reports, it can be done. You can, via a script that takes both reports, maybe extract the body of each, and, element by element only do a copy the passing one if the other is failing, or if both are failing, copy a failing one. But it looks like that would be an effort to hide a possible problem, and not to fix it from the ground up.

Edit:

There is at least one lib that can help you achieve this, ReportBuilder, or the Java equivalent: ReportBuilderJava.

Upvotes: 1

Related Questions