Install jest(it needs Jest 21+) and jest-runner-mocha
yarn add --dev jest jest-runner-mocha
# or with NPM
npm install --save-dev jest jest-runner-mocha
In your package.json
{
"jest": {
"runner": "jest-runner-mocha"
}
}Or in jest.config.js
module.exports = {
runner: 'jest-runner-mocha',
}yarn jestThis project uses cosmiconfig, so you can provide config via:
- a
jest-runner-mochaproperty in yourpackage.json - a
jest-runner-mocha.config.jsJS file - a
.jest-runner-mocharcJSON file
In package.json
{
"jest-runner-mocha": {
"cliOptions": {
// Options here
},
"coverageOptions": {
// Options here
}
}
}or in jest-runner-mocha.config.js
module.exports = {
cliOptions: {
// Options here
},
"coverageOptions": {
// Options here
}
}jest-runner-mocha maps some mocha CLI arguments to config options. For example --ui is cliOptions.ui
| option | example |
|---|---|
| ui | "ui": "tdd" |
| timeout | "timeout": 10000 |
| compiler | "compiler": "./path/to/babel-register" |
| file | "file": ["./path/to/include.js", "/supports/multiple/files.js"] |
jest-runner-mocha has some optional configuration for code coverage
| option | example | description |
|---|---|---|
| useBabelRc | "useBabelRc": true |
read .babelrc when instrumenting for code coverage (required if you transpile your code with babel). |
Coverage works outside of the box, simply yarn jest -- --coverage
You can also use other Jest options like coveragePathIgnorePatterns and coverageReporters
