Allure Plugin
Allure plugin for CodeceptJS via allure-commons v1
Warning
This plugin was deprecated in CodeceptJS as to allure-commons v1 was not maintained anymore. Documentation and source code was moved into this repository. At this moment we don't plan to migrate it to Allure v2 but community can create their own implementations
Enables Allure reporter.
Usage
To start please install allure-commandline
package (which requires Java 8)
npm install -g allure-commandline --save-dev
Add this plugin to config file:
plugins: {
allure: {
enabled: true,
require: '@codeceptjs/allure-legacy',
}
}
By default, allure reports are saved to output
directory.
Launch Allure server and see the report like on a screenshot above:
allure serve output
Configuration
outputDir
- a directory where allure reports should be stored. Standard output directory is set by default.
enableScreenshotDiffPlugin
- a boolean flag for add screenshot diff to report.
To attach, tou need to attach three files to the report - "diff.png", "actual.png", "expected.png".
See Allure Screenshot Plugin
Public API
There are few public API methods which can be accessed from other plugins.
const allure = codeceptjs.container.plugins('allure');
allure
object has following methods:
addAttachment(name, buffer, type)
- add an attachment to current test / suite
addLabel(name, value)
- adds a label to current test
addParameter(kind, name, value)
- adds a parameter to current test
createStep(name, stepFunc)
- create a step, stepFunc could consist an attachment
Example of usage:
allure.createStep('New created step', () => {
allure.addAttachment(
'Request params',
'{"clientId":123, "name":"Tom", "age":29}',
'application/json'
);
});
addScreenDiff(name, expectedImg, actualImg, diffImg)
- add a special screen diff block to the current test case
image must be a string representing the contents of the expected image file encoded in base64
Example of usage:
const expectedImg = fs.readFileSync('expectedImg.png', { encoding: 'base64' });
...
allure.addScreenDiff('Screen Diff', expectedImg, actualImg, diffImg);
severity(value)
- adds severity label
epic(value)
- adds epic label
feature(value)
- adds feature label
story(value)
- adds story label
issue(value)
- adds issue label
setDescription(description, type)
- sets a description
addAttachment
Add an attachment to the current test case
Parameters
name
[string][1] Name of the attachment
buffer
[Buffer][2] Buffer of the attachment
type
[string][1] MIME type of the attachment
addLabel
Adds a label with the given name and value to the current test in the Allure report
Parameters
name
[string][1] name of the label to add
value
[string][1] value of the label to add
addParameter
Adds a parameter with the given kind, name, and value to the current test in the Allure report
Parameters
kind
[string][1] kind of the parameter to add
name
[string][1] name of the parameter to add
value
[string][1] value of the parameter to add
addScreenDiff
Add a special screen diff block to the current test case
Parameters
name
[string][1] Name of the screen diff block
expectedImg
[string][1] string representing the contents of the expected image file encoded in base64
actualImg
[string][1] string representing the contents of the actual image file encoded in base64
diffImg
[string][1] string representing the contents of the diff image file encoded in base64.
Could be generated by image comparison lib like "pixelmatch" or alternative
createStep
A method for creating a step in a test case.
Parameters
name
[string][1] The name of the step.
stepFunc
[Function][3] The function that should be executed for this step. (optional, default ()=>{}
)
Returns any The result of the step function.
setDescription
Set description for the current test case
Parameters
description
[string][1] Description for the test case
type
[string][1] MIME type of the description (optional, default 'text/plain'
)
allure
Allure reporter
![][4]
Parameters
allure
Creates an instance of the allure reporter
Parameters
config
Config Configuration for the allure reporter (optional, default {outputDir:global.output_dir}
)
Returns [Object][9] Instance of the allure reporter