$ yarn add --dev eslint eslint-plugin-jest
Note: If you installed ESLint globally then you must also install
eslint-plugin-jest globally.
Add jest to the plugins section of your .eslintrc configuration file. You
can omit the eslint-plugin- prefix:
{
"plugins": ["jest"]
}Then configure the rules you want to use under the rules section.
{
"rules": {
"jest/no-disabled-tests": "warn",
"jest/no-focused-tests": "error",
"jest/no-identical-title": "error",
"jest/prefer-to-have-length": "warn",
"jest/valid-expect": "error"
}
}You can also whitelist the environment variables provided by Jest by doing:
{
"env": {
"jest/globals": true
}
}This plugin exports a recommended configuration that enforces good testing practices.
To enable this configuration use the extends property in your .eslintrc
config file:
{
"extends": ["plugin:jest/recommended"]
}See ESLint documentation for more information about extending configuration files.
| Rule | Description | Recommended | Fixable |
|---|---|---|---|
| consistent-test-it | Enforce consistent test or it keyword | ||
| lowercase-name | Disallow capitalized test names | ||
| no-disabled-tests | Disallow disabled tests | ||
| no-focused-tests | Disallow focused tests | ||
| no-hooks | Disallow setup and teardown hooks | ||
| no-identical-title | Disallow identical titles | ||
| no-jasmine-globals | Disallow Jasmine globals | ||
| no-jest-import | Disallow importing jest |
||
| no-large-snapshots | Disallow large snapshots | ||
| no-test-prefixes | Disallow using f & x prefixes to define focused/skipped tests |
||
| prefer-expect-assertions | Suggest using expect.assertions() OR expect.hasAssertions() |
||
| prefer-to-be-null | Suggest using toBeNull() |
||
| prefer-to-be-undefined | Suggest using toBeUndefined() |
||
| prefer-to-have-length | Suggest using toHaveLength() |
||
| prefer-inline-snapshots | Suggest using toMatchInlineSnapshot() |
||
| valid-describe | Enforce valid describe() callback |
||
| valid-expect-in-promise | Enforce having return statement when testing with promises | ||
| valid-expect | Enforce valid expect() usage |