Never miss a release that matters

AI-powered summaries of every GitHub release.

AI Summaries

Changelogs condensed into clear, actionable insights.

Always Free

Track up to 5 packages at no cost, forever.

Weekly Digest

A curated summary of every release, delivered weekly.

Get Started Free
jestv30.x
12 releases

TL;DR

Jest now supports requiring ES modules with require() and offers improved Temporal API (date/time) support via fake timers, preparing for native ESM stabilization.

New

  • Support for require() of ES modules on Node v24.9+.
  • Fake timers now work with the Temporal API.
  • Added --collect-tests flag to list tests without running them.

Fixes Worth Knowing

  • Fixed issues with toStrictEqual failing on structuredClone results.
  • Corrected handling of default exports when importing CJS modules in ESM contexts.
  • React 19 components now display correctly in snapshot output.

Before You Upgrade

If you are using ESM and require(), ensure you are on Node v24.9 or later.

v30.4.2v30.4.2
May 9, 2026
v30.4.1v30.4.1
May 8, 2026
v30.4.0v30.4.0
May 7, 2026
v30.3.0v30.3.0
Mar 10, 2026
v30.2.030.2.0
Sep 28, 2025
v30.1.330.1.3
Sep 3, 2025
v30.1.230.1.2
Sep 3, 2025
v30.1.130.1.1
Aug 27, 2025
v30.1.030.1.0
Aug 27, 2025
v30.0.230.0.2
Jun 19, 2025
Jun 18, 2025
v30.0.0Jest 30
Jun 10, 2025
jestv30.xprerelease
9 releases

TL;DR

Jest 30 drops support for Node.js 16 and includes several fixes to improve stability and correctness, particularly around module loading and error handling.

Breaking

  • Node.js 16 Support Dropped: (Programming language runtime) Projects must upgrade to Node.js 18 or higher.

New

  • ArrayOf Matcher: (Asymmetric matcher) A new ArrayOf matcher allows for more precise array comparisons in tests.

Fixes Worth Knowing

  • Module Loading: Fixed issues with loading stub modules and core modules consistently.
  • Error Display: Improved display of AggregateError (grouped errors) for better debugging.
  • objectContaining Matcher: Corrected a bug where objectContaining incorrectly matched non-object values.
  • Worker Stability: Addressed worker state issues for more reliable test execution.
v30.0.0-beta.4v30.0.0-beta.4
May 27, 2025
v30.0.0-beta.3v30.0.0-beta.3
May 27, 2025
v30.0.0-alpha.7v30.0.0-alpha.7
Jan 30, 2025
v30.0.0-alpha.6v30.0.0-alpha.6
Aug 8, 2024
v30.0.0-alpha.5v30.0.0-alpha.5
May 30, 2024
v30.0.0-alpha.4v30.0.0-alpha.4
May 12, 2024
v30.0.0-alpha.3v30.0.0-alpha.3
Feb 20, 2024
v30.0.0-alpha.2v30.0.0-alpha.2
Nov 16, 2023
v30.0.0-alpha.1v30.0.0-alpha.1
Oct 30, 2023
jestv29.x
23 releases

TL;DR

Jest now supports initializing new projects directly from the command line using npm init or yarn create, simplifying setup.

Fixes Worth Knowing

  • moduleNameMapper now handles unmatched capture groups correctly, preventing errors.
  • Inline snapshots now accept strings in addition to template literals.
  • Test runtime calculations are more reliable when perStats.duration is missing.
v29.7.0v29.7.0
Sep 12, 2023
v29.6.4v29.6.4
Aug 24, 2023
v29.6.3v29.6.3
Aug 21, 2023
v29.6.2v29.6.2
Jul 27, 2023
v29.6.1v29.6.1
Jul 6, 2023
v29.6.0v29.6.0
Jul 4, 2023
v29.5.0v29.5.0
Mar 6, 2023
v29.4.3v29.4.3
Feb 15, 2023
v29.4.2v29.4.2
Feb 7, 2023
v29.4.1v29.4.1
Jan 26, 2023
v29.4.0v29.4.0
Jan 24, 2023
v29.3.1v29.3.1
Nov 8, 2022
v29.3.0v29.3.0
Nov 7, 2022
v29.2.2v29.2.2
Oct 24, 2022
v29.2.1v29.2.1
Oct 18, 2022
v29.2.0v29.2.0
Oct 14, 2022
v29.1.2v29.1.2
Sep 30, 2022
v29.1.1v29.1.1
Sep 28, 2022
v29.1.0v29.1.0
Sep 28, 2022
v29.0.3v29.0.3
Sep 10, 2022
v29.0.2v29.0.2
Sep 3, 2022
v29.0.1v29.0.1
Aug 26, 2022
v29.0.0v29.0.0
Aug 25, 2022
jestv29.xprerelease
6 releases

TL;DR

Jest’s mocking utilities have been overhauled, providing more precise and flexible control over mock implementations, and now deeply mock by default.

Breaking

  • jest.mocked helper now deeply mocks by default (creates mocks of all properties).
  • Mocked* utility types have been reworked (TypeScript definitions for mocks).

New

  • New jest.Mocked, jest.MockedClass, jest.MockedFunction, and jest.MockedObject utility types (TypeScript helpers for defining mock types) are now available.
  • Circus runner (Jest’s test runner) now includes each for failing tests.

Fixes Worth Knowing

  • Inline snapshot updates now work correctly with JSX (JavaScript XML).
  • Jest can now find your Babel (JavaScript compiler) configuration when updating inline snapshots.
v29.0.0-alpha.6v29.0.0-alpha.6
Aug 19, 2022
v29.0.0-alpha.5v29.0.0-alpha.5
Aug 11, 2022
v29.0.0-alpha.4v29.0.0-alpha.4
Aug 8, 2022
v29.0.0-alpha.3v29.0.0-alpha.3
Aug 7, 2022
v29.0.0-alpha.1v29.0.0-alpha.1
Aug 4, 2022
v29.0.0-alpha.0v29.0.0-alpha.0
Jul 17, 2022
jestv28.x
8 releases

TL;DR

Jest now uses a more efficient method for leak detection, removing an external C dependency and improving performance.

Fixes Worth Knowing

  • jest-changed-files: Resolved an issue causing lock-ups with repeated use.
  • @jest/expect-utils: Corrected deep equality comparisons for ImmutableJS OrderedSets (data structures).
  • jest-snapshot: Fixed indentation issues when using awaited inline snapshots.
  • jest-mock: Improved type support for spyOn when working with objects with index signatures (dynamic keys).
v28.1.3v28.1.3
Jul 13, 2022
v28.1.2v28.1.2
Jun 29, 2022
v28.1.1v28.1.1
Jun 7, 2022
v28.1.0v28.1.0
May 6, 2022
v28.0.3v28.0.3
Apr 29, 2022
v28.0.2v28.0.2
Apr 27, 2022
v28.0.1v28.0.1
Apr 26, 2022
v28.0.0v28.0.0
Apr 25, 2022
jestv28.xprerelease
12 releases

TL;DR

Jest gains experimental support for import.meta.jest (runtime metadata) and a new GitHub Actions reporter, alongside several breaking changes preparing for v28.

Breaking

  • rootDir in babel-jest now passed as root (Babel configuration).
  • TestWatcher class moved to the jest-watcher package (testing architecture).
  • Context type must be imported from @jest/test-result (test context).
  • process() and processAsync() in jest-transform must return structured data (test transformation).
  • Dropped support for [email protected] – minimum version is now 4.3 (TypeScript compatibility).
  • Config option name renamed to id (Jest configuration).
  • Second argument to runner constructors is now required (test runner customization).
  • Default advanced serialization for child process workers (worker process behavior).

New

  • GitHub Actions reporter (CI/CD integration).
  • import.meta.jest provides runtime information about the Jest environment (runtime metadata).

Fixes Worth Knowing

  • Improved error messages for
v28.0.0-alpha.11v28.0.0-alpha.11
Apr 20, 2022
v28.0.0-alpha.10v28.0.0-alpha.10
Apr 20, 2022
v28.0.0-alpha.9v28.0.0-alpha.9
Apr 19, 2022
v28.0.0-alpha.8v28.0.0-alpha.8
Apr 5, 2022
v28.0.0-alpha.7v28.0.0-alpha.7
Mar 6, 2022
v28.0.0-alpha.6v28.0.0-alpha.6
Mar 1, 2022
v28.0.0-alpha.5v28.0.0-alpha.5
Feb 24, 2022
v28.0.0-alpha.4v28.0.0-alpha.4
Feb 22, 2022
v28.0.0-alpha.3v28.0.0-alpha.3
Feb 17, 2022
v28.0.0-alpha.2v28.0.0-alpha.2
Feb 16, 2022
v28.0.0-alpha.1v28.0.0-alpha.1
Feb 15, 2022
v28.0.0-alpha.0v28.0.0-alpha.0
Feb 10, 2022
jestv27.x
27 releases

TL;DR

Jest now includes expect.closeTo (numeric comparison matcher) and mockFn.mock.lastCall (accessing the last arguments of a mock function), improving testing flexibility.

New

  • Added expect.closeTo for more readable numeric comparisons.
  • mockFn.mock.lastCall allows retrieving the arguments from the most recent mock function call.

Fixes Worth Knowing

  • Improved support for .toHaveProperty('') and describe.each/test.each with ReadonlyArray types.
  • Fixed issues with snapshot matching for .mjs files and asymmetric matchers.
  • Added atob and btoa functions to the Node.js testing environment.

Before You Upgrade

No specific upgrade steps are required.

v27.5.1v27.5.1
Feb 8, 2022
v27.5.0v27.5.0
Feb 5, 2022
v27.4.7v27.4.7
Jan 5, 2022
v27.4.6v27.4.6
Jan 4, 2022
v27.4.5v27.4.5
Dec 13, 2021
v27.4.4v27.4.4
Dec 10, 2021
v27.4.3v27.4.3
Dec 1, 2021
v27.4.2v27.4.2
Nov 30, 2021
v27.4.1v27.4.1
Nov 30, 2021
v27.4.0v27.4.0
Nov 29, 2021
v27.3.1v27.3.1
Oct 19, 2021
v27.3.027.3.0
Oct 17, 2021
v27.2.527.2.5
Oct 8, 2021
v27.2.427.2.4
Sep 29, 2021
v27.2.327.2.3
Sep 28, 2021
v27.2.227.2.2
Sep 25, 2021
v27.2.127.2.1
Sep 20, 2021
v27.2.027.2.0
Sep 13, 2021
v27.1.127.1.1
Sep 8, 2021
v27.1.027.1.0
Aug 27, 2021
v27.0.627.0.6
Jun 28, 2021
v27.0.527.0.5
Jun 22, 2021
v27.0.427.0.4
Jun 3, 2021
v27.0.327.0.3
May 29, 2021
v27.0.227.0.2
May 29, 2021
v27.0.127.0.1
May 25, 2021
v27.0.027.0.0
May 25, 2021
jestv26.x
18 releases

TL;DR

Jest now supports top-level await in tests and improves ESM (EcmaScript Modules) support, enabling better compatibility with modern JavaScript projects.

Fixes Worth Knowing

  • Fixed an issue where Jest would sometimes fail to resolve mock dependencies.
  • Corrected an error with objectContaining matchers.
  • Improved error messages for missing preset modules.
  • Resolved issues with dynamic imports and file URLs.
  • Addressed a bug in watch mode related to configuration updates.

Before You Upgrade

If you are using TypeScript, review the updated documentation for using mocks to ensure compatibility with the newer Jest types.

v26.6.326.6.3
Nov 4, 2020
v26.6.226.6.2
Nov 2, 2020
v26.6.126.6.1
Oct 23, 2020
v26.6.026.6.0
Oct 19, 2020
v26.5.326.5.3
Oct 11, 2020
v26.5.226.5.2
Oct 6, 2020
v26.5.126.5.1
Oct 5, 2020
v26.5.026.5.0
Oct 5, 2020
v26.4.226.4.2
Aug 22, 2020
v26.4.126.4.1
Aug 20, 2020
v26.4.026.4.0
Aug 12, 2020
v26.3.026.3.0
Aug 10, 2020
v26.2.226.2.2
Jul 31, 2020
v26.2.126.2.1
Jul 30, 2020
v26.2.026.2.0
Jul 30, 2020
v26.1.026.1.0
Jun 23, 2020
v26.0.126.0.1
May 5, 2020
v26.0.026.0.0
May 4, 2020
jestv25.x
16 releases

TL;DR

Jest now supports importing CommonJS (CJS) modules from ECMAScript Modules (ESM) using import statements, improving interoperability between different module types.

New

  • Explicitly import Jest globals via the new @jest/globals package.
  • Coverage reports now include sources related to changed files, speeding up focused testing.

Fixes Worth Knowing

  • beforeAll and afterAll hooks will no longer run in skipped test blocks, resolving unexpected behavior.
  • Improved error messages now display Symbol names for custom matchers.
  • Fixed a memory leak when running tests in band (concurrent tests limited to a single worker).

Before You Upgrade

  • If you explicitly import Jest globals, update your imports to use the @jest/globals package.
v25.5.425.5.4
May 2, 2020
v25.5.325.5.3
Apr 30, 2020
v25.5.225.5.2
Apr 29, 2020
v25.5.125.5.1
Apr 29, 2020
v25.5.025.5.0
Apr 28, 2020
v25.4.025.4.0
Apr 19, 2020
v25.3.025.3.0
Apr 8, 2020
v25.2.725.2.7
Apr 3, 2020
v25.2.625.2.6
Apr 2, 2020
v25.2.525.2.5
Apr 2, 2020
v25.2.425.2.4
Mar 29, 2020
v25.2.325.2.3
Mar 26, 2020
v25.2.225.2.2
Mar 26, 2020
v25.2.125.2.1
Mar 26, 2020
v25.2.025.2.0
Mar 25, 2020
v25.1.025.1.0
Jan 22, 2020
jestv24.x
10 releases

TL;DR

Jest 24 introduces significant performance improvements, including faster test execution and reduced memory usage, alongside a major migration to TypeScript for improved maintainability.

Breaking

  • Removed support for @providesModule.
  • Dropped Babel 6 support, requiring Node.js 6+.
  • Removed long-deprecated globals for fake timers.
  • setupTestFrameworkScriptFile is deprecated, use setupFilesAfterEnv instead.
  • Changes to worker thread functionality and configuration.
  • diff package replaced with diff-sequences.
  • Error process codes are only set when non-zero.

New

  • Added jest.isolateModules for scoped module initialization.
  • Support for custom test sequencers via testSequencer configuration option.
  • Node worker thread support for parallel test execution.

Fixes Worth Knowing

  • Fixed issues with mocks not working with module name mappers.
  • Corrected coverage data for untested files.
  • Resolved memory leaks in various areas, including Jasmine and the console.
  • Improved error messages and stack traces.
  • Fixed issues with requireActual and module resolution.

Before You Upgrade

  • Update your Babel configuration to Babel
v24.9.024.9.0
Aug 16, 2019
v24.8.024.8.0
Aug 16, 2019
v24.7.124.7.1
Aug 16, 2019
v24.7.024.7.0
Aug 16, 2019
v24.6.024.6.0
Aug 16, 2019
v24.5.024.5.0
Aug 16, 2019
v24.4.024.4.0
Aug 16, 2019
v24.3.024.3.0
Aug 16, 2019
v24.1.024.1.0
Aug 16, 2019
v24.0.024.0.0
Aug 16, 2019
jestv23.x
10 releases

TL;DR

Jest now supports inline snapshots and property matchers, significantly improving snapshot testing workflow and readability.

Breaking

  • toMatchSnapshot now concatenates the test name, optional snapshot name, and a count into the snapshot filename.
  • Mocked functions no longer track timestamps, using invocationCallOrder instead.
  • babel-jest transformers must always return an object.
  • jest.genMockFn and jest.genMockFunction have been removed.
  • pretty-format no longer includes undefined props in React elements.

New

  • Inline snapshots (toMatchInlineSnapshot, toThrowErrorMatchingInlineSnapshot) offer a more streamlined snapshot experience.
  • Property matchers allow for more focused snapshot comparisons.
  • Watch plugins can now be configured and have access to more global configuration options.

Fixes Worth Knowing

  • Improved error messages for invalid arguments to it/test.
  • Fixed issues with mocking and spying on properties, including prototype chains.
  • Resolved problems with coverage reporting and test execution in watch mode.
  • Corrected handling of symbolic properties in equality checks.
  • Fixed issues with
v23.6.023.6.0
Aug 16, 2019
v23.5.023.5.0
Aug 16, 2019
v23.4.223.4.2
Aug 16, 2019
v23.4.123.4.1
Aug 16, 2019
v23.4.023.4.0
Aug 16, 2019
v23.3.023.3.0
Aug 16, 2019
v23.2.023.2.0
Aug 16, 2019
v23.1.023.1.0
Aug 16, 2019
v23.0.123.0.1
Aug 16, 2019
v23.0.023.0.0
Aug 16, 2019
jestv22.x
17 releases

TL;DR

Jest v22 introduces significant performance improvements with parallel workers and updates to core dependencies like JSDOM (v11). Major features include enhanced test reporting, improved snapshot testing, and more flexible configuration options.

Breaking

  • toBe matcher now uses Object.is for equality checks.
  • JSDOM upgraded to v11, potentially impacting tests relying on specific JSDOM behavior.
  • Asynchronous Test Environment APIs changed; dispose is now teardown.
  • Support for Node.js version 4 has been dropped.
  • Snapshot names now concatenate test and snapshot names.
  • Jest now fails if no tests are found.

New

  • Parallel test execution via worker abstraction for faster test runs.
  • Codeframe added to test assertion failures for easier debugging.
  • Global setup/teardown options for running code before/after all tests.

Fixes Worth Knowing

  • Improved handling of Windows paths and file system interactions.
  • Fixed issues with coverage collection and reporting.
  • Resolved problems with mocking and module resolution.
  • Fixed errors related to snapshot testing and diffing.
v22.4.222.4.2
Aug 16, 2019
v22.4.122.4.1
Aug 16, 2019
v22.4.022.4.0
Aug 16, 2019
v22.3.022.3.0
Aug 16, 2019
v22.2.222.2.2
Aug 16, 2019
v22.2.122.2.1
Aug 16, 2019
v22.2.022.2.0
Aug 16, 2019
v22.1.422.1.4
Aug 16, 2019
v22.1.322.1.3
Aug 16, 2019
v22.1.222.1.2
Aug 16, 2019
v22.1.122.1.1
Aug 16, 2019
v22.1.022.1.0
Aug 16, 2019
v22.0.522.0.5
Aug 16, 2019
v22.0.422.0.4
Aug 16, 2019
v22.0.222.0.2
Aug 16, 2019
v22.0.122.0.1
Aug 16, 2019
v22.0.022.0.0
Aug 16, 2019
jestv21.x
6 releases

TL;DR

Jest has been significantly updated with new features for filtering tests and improved debugging, including options to run tests only for changed files and better source map support.

Breaking

  • ES Module Exports: Jest now uses ES module exports, potentially impacting builds if you were relying on CommonJS.
  • Jasmine Replacement: The underlying test runner has moved from Jasmine to jest-circus.

New

  • Changed File Testing: Run tests only for changed files with --changedFilesWithAncestor and --onlyChanged.
  • Improved Debugging: Source map support and better stack traces enhance the debugging experience.

Fixes Worth Knowing

  • Fixed issues with --watchAll not running tests on save and problems with --silent --verbose.
  • Resolved a race condition with coverage generation and Babel.
  • Corrected issues with mocking functions and handling Map/Set equality.
  • Improved error messages for toBeCalledWith and toMatchObject assertions.

Before You Upgrade

  • If you are importing Jest modules directly, verify your build process supports ES modules.
  • Review your test setup to ensure compatibility with jest-circus.
v21.2.121.2.1
Aug 16, 2019
v21.2.021.2.0
Aug 16, 2019
v21.1.021.1.0
Aug 16, 2019
v21.0.221.0.2
Aug 16, 2019
v21.0.121.0.1
Aug 16, 2019
v21.0.021.0.0
Aug 16, 2019
jestv20.x
4 releases

TL;DR

Jest received a major overhaul, introducing multi-project testing and significant improvements to asynchronous testing with promise support for matchers like .resolves and .rejects.

Breaking

  • Jest no longer writes new snapshots by default on CI (Continuous Integration) environments.
  • The typescript parser moved to a separate package (jest-test-typescript-parser).
  • Removed automatic loading of babel-polyfill, now only uses regenerator-runtime (runtime environment).
  • Jest’s test runner was completely rewritten, forking from Jasmine 2.5.

New

  • Run tests across multiple projects simultaneously with the new --projects option.
  • Use the --listTests flag to display a list of tests.
  • View your Jest configuration with the --showConfig flag.

Fixes Worth Knowing

  • Fixed issues with progress bars on Windows.
  • Corrected handling of duplicate module IDs and <rootDir> replacement.
  • Improved stability with watchers on macOS.
  • Fixed several bugs related to mocking, timers, and snapshot serialization.
v20.0.420.0.4
Aug 16, 2019
v20.0.320.0.3
Aug 16, 2019
v20.0.120.0.1
Aug 16, 2019
v20.0.020.0.0
Aug 16, 2019
jestv19.x
2 releases

TL;DR

Jest received a major overhaul with a rewritten watch mode (file watching for test reruns) and significant configuration changes, improving performance and developer experience.

Breaking

  • mocksPattern removed (never worked correctly).
  • testPathDirs renamed to roots (clarifies configuration).
  • Snapshot format updated (properly escapes data).
  • React element printing changed (reduces unnecessary snapshot changes).

New

  • --collectCoverageFrom and --coverageDirectory CLI arguments (more control over coverage reports).
  • expect.addSnapshotSerializer (allows custom snapshot handling for complex data types).
  • jest.spyOn (easier and more robust mocking of methods).

Fixes Worth Knowing

  • Fixed infinite loop with --watch and --coverage.
  • Corrected --color argument recognition.
  • Resolved issues with console.log and memory leaks.
  • Fixed handling of invalid CLI options.

Before You Upgrade

  • Update your Jest configuration to use roots instead of testPathDirs.
  • Review your snapshot files, as the format has changed and may require updates.
v19.0.119.0.1
Aug 16, 2019
v19.0.019.0.0
Aug 16, 2019
jestv18.x
2 releases

TL;DR

Jest now includes more flexible matchers (like expect.any and expect.objectContaining) and improved snapshot testing, but requires updating how custom test result processors are configured.

Breaking

  • testResultsProcessor now requires returning modified results.
  • pit and mockImpl are removed; use it and mockImplementation instead.
  • --jsonOutputFile is renamed to --outputFile.

New

  • Added flexible matchers for more precise assertions (expect.any, expect.objectContaining).
  • Improved snapshot testing with named snapshots (.toMatchSnapshot(?string)) and regex escaping.

Fixes Worth Knowing

  • Corrected test behavior with --bail and --watch.
  • Fixed issues with require('v8') and test.concurrent.
  • Improved error messages for invalid configurations.
  • Enhanced display of large objects in diffs.

Before You Upgrade

  • Update any custom testResultsProcessor implementations to return the modified test results.
v18.1.018.1.0
Aug 16, 2019
v18.0.018.0.0
Aug 16, 2019
jestv17.x
4 releases

TL;DR

Jest now collapses large snapshot diffs by default, improving readability, and can be expanded with the --expand flag (command line option).

Breaking

  • scriptPreprocessor is removed, use transform instead (configuration option).
  • jest.clearAllMocks is replaced by jest.resetAllMocks (mocking function).

New

  • expect.extend allows for custom matchers (assertion extensions).
  • Custom snapshot serializers are now supported (snapshot testing).

Fixes Worth Knowing

  • Improved performance of module resolution.
  • Correctly handles React Native projects with platform-specific files.
  • Improved printing of large objects in test output.

Before You Upgrade

  • Replace any uses of scriptPreprocessor with transform in your Jest configuration.
  • Update your tests to use jest.resetAllMocks instead of jest.clearAllMocks.
v17.0.317.0.3
Aug 16, 2019
v17.0.217.0.2
Aug 16, 2019
v17.0.117.0.1
Aug 16, 2019
v17.0.017.0.0
Aug 16, 2019
jestv16.x
3 releases

TL;DR

Jest now runs failed tests first and includes a new concurrent reporter, improving the developer experience when diagnosing and monitoring test runs.

Breaking

  • Snapshots require updating due to a rewrite of the snapshot implementation.

New

  • Concurrent Reporter: Displays currently running tests, a summary, progress bar, and estimated time.
  • Test Filtering: Run individual tests with --testNamePattern or -t <pattern>.
  • Concurrent Async Tests: Use test.concurrent to run async tests in parallel.

Fixes Worth Knowing

  • Symbols are now correctly mocked with jest-mock.
  • toHaveBeenCalledWith() now functions as expected.
  • Newlines in snapshots are consistently handled across operating systems.

Before You Upgrade

  • Update your snapshots after upgrading, as the snapshot implementation has been rewritten.
v16.0.216.0.2
Aug 16, 2019
v16.0.116.0.1
Aug 16, 2019
v16.0.016.0.0
Aug 16, 2019
jestv15.x
5 releases

TL;DR

Jest now includes improved matchers and CLI output, and automatically recognizes .spec.js and .test.js files, simplifying test setup.

Breaking

  • Matchers have been completely rewritten (testing assertions).
  • Automocking, fake timers, and module registry resetting are disabled by default (test isolation).

New

  • Improved watch mode allows updating snapshots and selecting test patterns interactively (test execution).
  • Enhanced code coverage support now collects data from untested files (code quality).

Fixes Worth Knowing

  • Test paths with hyphens now work correctly on Windows (file system compatibility).
  • afterAll/afterEach/beforeAll/beforeEach now support Promises and async/await (asynchronous testing).

Before You Upgrade

  • Review your existing tests to account for the new Jest matchers.
v15.1.115.1.1
Aug 16, 2019
v15.1.015.1.0
Aug 16, 2019
v15.0.215.0.2
Aug 16, 2019
v15.0.115.0.1
Aug 16, 2019
v15.0.015.0.0
Aug 16, 2019
jestv14.x
4 releases

TL;DR

Jest now fully supports snapshot tests and replaces Jasmine matchers with its own, offering a more consistent testing experience.

Breaking

  • Jasmine 1 support removed (older testing framework).
  • Jest matchers replaced (expect syntax changes).

New

  • Snapshot tests are now officially supported (record and compare UI/data).
  • Experimental React Native support added (test mobile applications).

Fixes Worth Knowing

  • babel-jest now composes transformers correctly (improves build process).
  • Configuration now accepts JSON objects (easier setup).

Before You Upgrade

Run jest -u or npm test -- -u to update existing snapshots after upgrading.

v14.1.014.1.0
Aug 16, 2019
v14.0.214.0.2
Aug 16, 2019
v14.0.114.0.1
Aug 16, 2019
v14.0.014.0.0
Aug 16, 2019
jestv13.x
3 releases

TL;DR

Jest now includes more detailed test reporting, a REPL (Read-Eval-Print Loop) for interactive debugging, and improved snapshot testing, making it easier to diagnose and understand test results.

Breaking

  • testcheck now requires explicit import (require('jest-check')) as a separate package.
  • jest-cli is now split into jest-runtime and jest-config.

New

  • jest.isMockFunction() allows you to reliably check if a function is a mock.
  • browser config option supports testing client-side apps (web browser code).

Fixes Worth Knowing

  • Improved snapshot output for JSX objects.
  • Corrected issues with the --verbose flag and top-level it calls.

Before You Upgrade

  • If you are using testcheck, update your imports to require('jest-check').
v13.2.013.2.0
Aug 16, 2019
v13.1.013.1.0
Aug 16, 2019
v13.0.013.0.0
Aug 16, 2019
jestv12.x
4 releases

TL;DR

Jest now natively supports asynchronous tests with Promises, and offers more flexible test discovery with testRegex, improving usability for modern JavaScript projects.

Breaking

  • testDirectoryName and testFileExtensions are deprecated (configuration options).
  • pit is deprecated (asynchronous test syntax).

New

  • Asynchronous tests are now supported by returning a Promise from it blocks.
  • testRegex allows matching tests outside of default folders (test discovery).

Fixes Worth Knowing

  • Improved stability on Windows.
  • Corrected issues with single test file execution and scoped packages.
  • Enhanced lastCalledWith and toBeCalledWith matchers (assertion helpers) to display recent calls.

Before You Upgrade

  • Update your test configuration to use testRegex instead of testDirectoryName and testFileExtensions.
  • Replace pit with Promise-returning it blocks for asynchronous tests.
v12.1.112.1.1
Aug 16, 2019
v12.1.012.1.0
Aug 16, 2019
v12.0.212.0.2
Aug 16, 2019
v12.0.112.0.1
Aug 16, 2019
jestv0.x
12 releases

TL;DR

Jest now cleans up test environments properly, resolving a memory leak and offering a --logHeapUsage flag for debugging. Several dependency updates, including jsdom, improve stability and performance.

Breaking

  • Removed undocumented public API: mock-modules, node-haste, and mocks virtual modules. Use the provided codemod to update.
  • Removed navigator.onLine and mockSetReadOnlyProperty from the jsdom environment; use standard JavaScript methods instead.
  • Jest now requires iojs v2 or later; upgrade from Node.js if possible.
  • toEqual now strictly checks object class names, fixing previously incorrect passing tests.
  • Preprocessor API changed to receive script, file, and config.

New

  • Print test results as JSON with the --json option.
  • Use --watch to re-run tests on file changes.
  • Configure a custom testRunner for more control over test execution.

Fixes Worth Knowing

  • Corrected error reporting for the --bail flag.
  • Fixed syntax error reporting and improved failure stack traces.
  • Resolved issues with mocking Map, WeakMap, and Set objects.
0.8.20.8.2
Aug 16, 2019
0.8.10.8.1
Aug 16, 2019
0.8.00.8.0
Aug 16, 2019
0.7.10.7.1
Aug 16, 2019
0.7.00.7.0
Aug 16, 2019
0.6.10.6.1
Aug 16, 2019
0.6.00.6.0
Aug 16, 2019
v0.5.60.5.6
Aug 16, 2019
v0.5.50.5.5
Aug 16, 2019
v0.5.20.5.2
Aug 16, 2019
v0.5.10.5.1
Aug 16, 2019
v0.5.00.5.0
Aug 16, 2019