1.3.0 • Published 6 years ago

cucumberjs-allure2-reporter v1.3.0

Weekly downloads
1,824
License
MIT
Repository
github
Last release
6 years ago

cucumberjs-allure2-reporter

Allure 2 reporter for Cucumber.JS framework Compatible with Cucumber.JS 3+ and Allure 2+

NPM link: cucumberjs-allure2-reporter

How to use

Create Reporter file:

export default class Reporter extends CucumberJSAllureFormatter {
	constructor(options) {
		super(
			options,
			new AllureRuntime({ resultsDir: "./out/allure-results" }),
			{
				labels: {
					issue: [/@bug_(.*)/],
					epic: [/@feature:(.*)/]
				}
			}
		);
	}
}

This class MUST:

  • Be a default export
  • Extend CucumberJSAllureFormatter
  • Take 1 argument in constructor and pass it to super() as first argument
  • Second super() argument is AllureRuntime instance
  • Third is a config, currently allows to map tags to Allure labels

Then pass with reporter as a Cucumber formatter:

node cucumber.js --format ./path/to/Reporter.js

If you want to retain default formatter add some dummy file as output:

node cucumber.js --format ./path/to/Reporter.js:./dummy.txt

Reporter without classes

If you can not use classes (ES6 or TypeScript), here is an example of Reporter.js file written in plain JS:

var CucumberJSAllureFormatter = require("cucumberjs-allure2-reporter").CucumberJSAllureFormatter;
var AllureRuntime = require("cucumberjs-allure2-reporter").AllureRuntime;

function Reporter(options) {
	CucumberJSAllureFormatter.call(this,
		options,
		new AllureRuntime({ resultsDir: "./out/allure-results" }),
		{});
}
Reporter.prototype = Object.create(CucumberJSAllureFormatter.prototype);
Reporter.prototype.constructor = Reporter;

exports.default = Reporter;

API

Instance of AllureInterface will be added to World prototype. You can use it for creating nested steps and adding info to the report.

Author

Ilya Korobitsyn mail@korobochka.org

Contributors

1.3.0

6 years ago

1.2.1

6 years ago

1.2.0

6 years ago

1.1.1

6 years ago

1.1.0

6 years ago

1.0.5

6 years ago

1.0.4

6 years ago

1.0.3

6 years ago

1.0.2

6 years ago

1.0.1

6 years ago

1.0.0

6 years ago