1.0.4 • Published 1 year ago

hermiona-allure-legacy v1.0.4

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

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'
      );
    });

Created Step Image

  • 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);

Overlay Diff

  • 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 Name of the attachment
  • buffer Buffer Buffer of the attachment
  • type string 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 name of the label to add
  • value string 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 kind of the parameter to add
  • name string name of the parameter to add
  • value string value of the parameter to add

addScreenDiff

Add a special screen diff block to the current test case

Parameters

  • name string Name of the screen diff block
  • expectedImg string string representing the contents of the expected image file encoded in base64
  • actualImg string string representing the contents of the actual image file encoded in base64
  • diffImg string 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 The name of the step.
  • stepFunc Function 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 Description for the test case
  • type string MIME type of the description (optional, default 'text/plain')

allure

Allure reporter

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 Instance of the allure reporter