cypress-template-fixtures

1.0.3 • Public • Published

Cypress Template Fixtures

Allow using {{ENVIRONMENT_VARIABLE}} in Cypress fixture files.

Setup

Install this package by run npm i -D cypress-template-fixtures or yarn add -D cypress-template-fixtures.

Add require('cypress-template-fixtures')(on, config); in the cypress/plugins/index.js.

module.exports = (on, config) => {
    require('cypress-template-fixtures')(on, config); // Add this line
    return config;
};

Also add cypress/fixtures.out/ into ignore list of you VCS. E.g. the .gitignore for Git.

Write Fixtures with variables

When writing a fixture data in cypress/fixtures, you can use environment variables. Put the environment variable name in between {{ and }}. Eg. {{NODE_ENV}} {{MY_VARIABLE}}.

Provide Environment Variables

Please refer to the doc here.

  1. From env field in cypress.json, don't have to use CYPRESS_ or cypress_ prefixes.
  2. From cypress.env.json, don't have to use CYPRESS_ or cypress_ prefixes.
  3. From command line or system environment variables, have to use CYPRESS_ or cypress_ prefixes.
  4. Using cypress-dotenv, have to use CYPRESS_ or cypress_ prefixes unless set the all parameter to true.

Note, if you use cypress-dotenv make sure enable it before cypress-template-fixtures.

module.exports = (on, config) => {
    config = require('cypress-dotenv')(config); // load .env before cypress-template-fixtures
    require('cypress-template-fixtures')(on, config);
    return config
};

How it works

  1. When running cypress run or cypress open this plugin will copy all fixtures in cypress/fixtures into cypress/fixtures.out with sub-folders structure preserved.
  2. When copying text fixtures (.json, .js, .coffee, .html, .txt, .csv) the variables like {{MY_VARIABLE}} will be replaced with the related environment variable value like MY_VARIABLE.
  3. This plugin will also change the fixturesFolder config to cypress/fixtures.out so that cypress will use the fixtures there.

Limitations

For simplicity, change the fixtures after cypress open may not regenerated automatically, you should rerun cypress open.

Dependencies (0)

    Dev Dependencies (4)

    Package Sidebar

    Install

    npm i cypress-template-fixtures

    Weekly Downloads

    879

    Version

    1.0.3

    License

    MIT

    Unpacked Size

    6.9 kB

    Total Files

    6

    Last publish

    Collaborators

    • xpol