jest-serial-runner
Extending the Jest
default runner to run tests serially by default
Simple wrapper over the default Jest runner that forces serial execution of test files. This is equivalent to running with --runInBand
flag by default.
Why? Sometimes you have limited/restricted resources on the test machine (like in a docker container) and running the default jest-runner
always runs in parallel unless specified otherwise. Integration tests are another scenario where running concurrent instances causes issues so using this runner ensures only 1 test runs at a time.
Installation
npm install jest-serial-runner --save-dev
Usage
Option 1: Specify the runner in your Jest
config
/* jest.config.json */
{
// ...
"runner": "jest-serial-runner"
// ...
}
Option 2: To specify the runner for a subset of files such as for integration tests.
module.exports = {
projects: [
{
displayName: "UNIT",
testMatch: ["<rootDir>/src/**/__tests__/*.spec.ts"]
},
{
displayName: "INTEGRATION",
runner: "jest-serial-runner",
testMatch: ["<rootDir>/tests/**/*.integration-test.ts"]
}
]
}
Contributors
Thank you to all of our contributors!
PR's & Issue contributions welcome! Please adhere to
contributing guidelines
or your submission will be closed or delayed.