Cucumberjs-junitxml
If your result.json cannot be consumed by cucumber-junit, you may want to use this package to output better json result and generate JUnitXML file for CI.
Install
-
Copy reporter/reporter.js to your cucumber support folder
-
Configure the options parameter as shown below. If unimplemented steps should be reported as a failure, set strict: true
, otherwise set it to false
:
var xml = junit(JSON.stringify(testResult), { indent: ' ', strict: true });
- Cucumberjs-junitxml should be added to your test codebase as a dev dependency. You can do this with:
$ npm install cucumberjs-junitxml --save-dev
Alternatively you can manually add it to your package.json file:
{
"devDependencies" : {
"cucumberjs-junitxml": "latest"
}
}
then install with:
$ npm install --dev
Run
Run your cucumber-js command. The reports should be saved to tests/features/output/
$ ./node_modules/.bin/cucumber.js
And you can manually convert your json to xml by
$ cat cucumber_report.json | ./node_modules/.bin/cucumber-junit > cucumber_report.xml
License
MIT