1.0.2 • Published 2 years ago

@voicenter-team/cypress-reporter-pm2 v1.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

@voicenter-team/cypress-reporter-pm2

cypress-reporter-pm2 is a cypress plugin for creating metrics after cypress tests execution.

Install

# npm
npm install @voicenter-team/cypress-reporter-pm2 --save-dev

# yarn
yarn add @voicenter-team/cypress-reporter-pm2 --dev

Usage

Import cypress-reporter-pm2 into cypress/plugins/index.js

// cypress/plugins/index.js

require('dotenv').config()
const cypressReporterPm2 = require('@voicenter-team/cypress-reporter-pm2');

module.exports = (on, config) => {
    config.testFiles = [...JSON.parse(process.env.SPEC_TO_RUN)]
    cypressReporterPm2(on)

    return config
};

Create pm2 config file in the project root directory:

// test.config.js
require('dotenv').config()

module.exports = {
    apps: [{
        name: 'cypress-basic-test',
        script: './node_modules/@vue/cli-service/bin/vue-cli-service.js',
        watch: false,
        args: `test:e2e --url=${process.env.VUE_APP_URL} --headless`,
        cwd: './',
        restart_delay: 180000,
        env: {
            SPEC_TO_RUN: '["page.exist.spec.js", "check.name.spec.js"]'
        }
    }]
}

env.SPEC_TO_RUN should include stringified array of tests which should be executed.

Set VUE_APP_URL to .env or use hardcoded string instead.

Use restart_delay to set the interval time between tests execution (in milliseconds).

Execute:

pm2 start test.config.js

Parameters

  • on - cypress event emitter
  • namespace string - namespace for current application to differ it's metrics from other applications
  • options object - configuration for plugin.

    • namePrefix string - prefix for customizing metric key
    • nameSuffix string - suffix for customizing metric key
    • metricNameBuilder function - custom function for building metric key. @param {string} spec spec name @param {object} test test data @param {string} namespace namespace @return {string}
    • testNameParser function - custom function for parsing test name. @param {string} spec spec name @param {object} test test data @return {string}
1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago