Generates a JSON report for cucumber via webdriver.io
This is a fork of the work previously done by AlexGalichenko
I have adapted and added missing properties to the JSON report. It's quite rough around the edges and could definitely do with a tidy up, along with some defensive coding and tests! It was thrown together quickly in order to get nice reporting working via multiple-cucumber-html-reporter
yarn add wdio-json-cucumber-reporter
or npm install wdio-json-cucumber-reporter
json-cucumber
to the list of reporters in wdio.conf.js
(see below).yarn add multiple-cucumber-html-reporter
and adapt the example config below.{
...
reporters: ['json-cucumber'],
...
reporterOptions: {
outputDir: 'some/output/dir',
cucumberJsonReporter: {
verbose: true, // true|false - set to true for verbose logging
deviceName: 'Local test environment' // Meta data for multiple-cucumber-html-reporter
}
}
...
}
This repository was originally created so that I could integrate my work project with multiple-cucumber-html-reporter
. Here's an example of how to get it working.
As long as the JSON reports are generated, you can then add something like the below to your wdio.conf.js
onComplete hook. Make sure you set the paths correctly.
...
onComplete: () => {
if (existsSync('./some/output/dir/report.json')) {
const htmlReporter = require('multiple-cucumber-html-reporter');
htmlReporter.generate({
pageTitle: `My report page title`,
reportName: `Cucumber test report`,
disableLog: true,
jsonDir: './some/output/dir/',
reportPath: './some/output/dir/'
});
}
},
...
Feel free to raise a pull request, or throw me a ticket via the issues section.