https://github.com/codeceptjs/allure-legacy
Allure plugin for CodeceptJS
https://github.com/codeceptjs/allure-legacy
Last synced: 3 months ago
JSON representation
Allure plugin for CodeceptJS
- Host: GitHub
- URL: https://github.com/codeceptjs/allure-legacy
- Owner: codeceptjs
- Created: 2023-02-12T23:37:06.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-15T12:19:12.000Z (over 2 years ago)
- Last Synced: 2024-04-14T04:05:43.642Z (about 1 year ago)
- Language: JavaScript
- Size: 10.7 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 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 implementationsEnables 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:
```js
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][5]#### Public API
There are few public API methods which can be accessed from other plugins.
```js
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:```js
allure.createStep('New created step', () => {
allure.addAttachment(
'Request params',
'{"clientId":123, "name":"Tom", "age":29}',
'application/json'
);
});
```![Created Step Image][6]
- `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:```js
const expectedImg = fs.readFileSync('expectedImg.png', { encoding: 'base64' });
...
allure.addScreenDiff('Screen Diff', expectedImg, actualImg, diffImg);
```![Overlay][7]
![Diff][8]- `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
- `config`
## 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
[5]: https://github.com/allure-framework/allure2/blob/master/plugins/screen-diff-plugin/README.md
[6]: https://user-images.githubusercontent.com/63167966/139339384-e6e70a62-3638-406d-a224-f32473071428.png
[7]: https://user-images.githubusercontent.com/63167966/215404458-9a325668-819e-4289-9b42-5807c49ebddb.png
[8]: https://user-images.githubusercontent.com/63167966/215404645-73b09da0-9e6d-4352-a123-80c22f7014cd.png