/cypress-dotenv

Cypress plugin that enables compatability with dotenv

Primary LanguageJavaScript

Cypress dotenv

Cypress plugin that enables compatability with dotenv.

Build Status Maintainability Test Coverage

What does this thing do?

It will load any environment variables defined in your .env file so you can access them via Cypress.env() from within your tests as you would expect.

Any Cypress config options definedin your .env will also be applied and take precedence over what is in your cypress.json file. See the Cypress docs for details on this

For example, if your .env file has something like this:

CYPRESS_HELLO=hola
GOODBYE=adios

You can use Cypress.env('HELLO) to access its value.

Install

npm install --save-dev cypress-dotenv

or

yarn add --dev cypress-dotenv

Configure

Since this is a plugin, you will need to modify your file cypress/plugins/index.js to look something like this:

const dotenvPlugin = require('cypress-dotenv');
module.exports = (on, config) => {
  config = dotenvPlugin(config)
  return config
}

Options

This plugin takes three paramaters. The first parameter (which is mandatory) is the Cypress config object.

The second is an optional dotenv config object.

The third is an optional [all] boolean parameter, which is set to false by default. If set to true, it returns all available environmental variables, not limited to those prefixed with CYPRESS_.