1.2.1 • Published 1 year ago

jest-serial-runner v1.2.1

Weekly downloads
8,414
License
MIT
Repository
github
Last release
1 year ago

jest-serial-runner


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.

/* jest.config.js */
module.exports = {
    // ...
    projects: [
        {
            // Uses the jest default runner for specification testing
            displayName: "UNIT",
            testMatch: ["<rootDir>/src/**/__tests__/*.spec.ts"]
        },
        {
            // Uses the serial runner instead for integration test files
            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.