It's a fork!
It is an experimental fork of jest-runner-mocha with some amazing features and fixes:
- Support for mocha custom version
- Support for
setupFilesAfterEnv
- Support for custom
clearMocks
implementation (ex. for sinon) - Support for jest flag
coverageProvider
v8
(node 10+ only) - See more in changelog!
Usage
Install
Install jest
(it needs Jest 21+) and jest-runner-mocha-next
npm install --save-dev jest jest-runner-mocha-next
Add it to your Jest config
In your package.json
Or in jest.config.js
moduleexports = runner: 'jest-runner-mocha-next'
Run Jest
npx jest
Options
This project uses cosmiconfig, so you can provide config via:
- a
jest-runner-mocha
property in yourpackage.json
- a
jest-runner-mocha.config.js
JS file - a
.jest-runner-mocharc
JSON file
In package.json
or in jest-runner-mocha.config.js
moduleexports = cliOptions: // Options here "coverageOptions": // Options here
cliOptions
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" ] |
coverageOptions
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
Coverage works outside of the box, simply npx jest -- --coverage
You can also use other Jest options like coveragePathIgnorePatterns and coverageReporters
Custom clearMocks function
Just make an export with a clearMocks function in your setupFilesAfterEnv
, like this:
'use strict'; const sinon = ;const nock = ; moduleexports = { sinonsandbox; if!nock console; nock; };