@cognifide/e2e

Cognifide default setup for Puppeteer and Protractor tests

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
30Jan 22, 2021Aug 22, 2018Minified + gzip package size for @cognifide/e2e in KB

Readme

Cognifide logo

@Cognifide E2E config

Cognifide default setup for Puppeteer and Protractor tests.

Installation

$ npm install @cognifide/e2e --global

Usage

$ coge2e init

Running this command will init setup and allow to select which configuration should be added.

Protractor setup

Running the tests

To run test with default configuration:

npm run test

There are two ways to run Protractor tests on specific environment: one way is to add another parameter --params.env [env_name]. List of available environment you an find in /data/env.json. The second way, easiest, is to run specific npm script: by default, configuration comes with 4 environments:

  • local - default environment which is tested when npm run test is executed
  • dev
  • staging
  • prod

In order to run tests on, for example, on prod environment simply run npm run test:prod

npm run test --params.env staging
/* or */
npm run test:staging

Real life example:

npm run test
    --suite homepage
    --exclude tests/analytics/homepage.js
    --params.env prod

/* or */

npm run test:prod
    --suite homepage
    --exclude tests/analytics/homepage.js

How to write Protractor tests

Puppeteer & Jest setup

Running the tests

Similar to Protractor config, default configuration comes with 4 default environments:

  • local - default environment which is tested when npm run test is executed
  • dev
  • staging
  • prod

Tests can be run on specific environment by running scripts like npm run test:prod. The only difference is that it's not possible to pass arguments like --params.env prod to the script, so trying to run npm run test --params.env prod will result in error. The only acceptable arguments are those that are available for Jest CLI options.

How to write Puppeteer tests

License

MIT

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.