Cypress plugin that will run linting via ESLint on your spec files as they are loaded and display errors in console
npm install cypress-eslint-preprocessorThis uses the file:preprocessor event which means it will lint files as they are loaded by Cypress. If you are running your full suite of tests, all the spec files will be linted, but if you are only running tests on a specific test suite then only the files that it loads will be linted.
This will use the .eslintrc file in your project root combined with the .eslintrc file in your Cypress directory (if you have one). This means you can easily set custom rules just for your Cypress spec files.
After linting has been run, it will call the default Cypress browserify preprocessor on the file, you can override this by passing in another preprocessor.
``bashnpm
npm install cypress-eslint-preprocessor --save-dev
Usage
If you are not currently using another plugin on the
file:preprocessor event
`javascript
// cypress/plugins/index.jsconst cypressEslint = require('cypress-eslint-preprocessor');
module.exports = (on) => {
on('file:preprocessor', cypressEslint());
};
`If you are using another plugin on the
file:preprocessor event, pass this in as a parameter to cypress eslint
`javascript
// cypress/plugins/index.jsconst cypressEslint = require('cypress-eslint-preprocessor');
const cypressBabelEsX = require('cypress-babel-esx-preprocessor');
module.exports = (on) => {
on('file:preprocessor', cypressEslint(cypressBabelEsX()));
};
``