Back to Explore

vitest-dev/vitest

GitHub
14 updates · last 90 daysOpen source

Last release:

Vitest is a next-generation JavaScript testing framework powered by Vite. It integrates with Vite’s configuration and plugins, provides Jest-compatible assertions and mocking, and supports features like smart watch mode, code coverage, DOM/browser testing modes, and running tests in the browser.

Project status

  • Actively maintained, with an upstream push on 2026-11-04 and updates as recently as 2026-11-02.
  • Updates have been frequent, including a major v5.0 update in September, multiple patches, and v5.1 in November.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v5.1.0

    Vitest 5.1 adds affected-test workflows, interactive snapshot review, richer browser tracing, new timer and Temporal support, and additional test diagnostics. It also includes numerous browser, runner, mocking, coverage, and cache fixes, plus performance improvements. The diff reveals configuration behavior and API-shape changes that are not fully called out in the release notes.

    Features
  • v5.1.0-beta.1

    Vitest v5.1.0-beta.1 introduces new CLI flags for running only failed or recently affected tests, and exposes per-retry and per-repeat attempt details. On the browser side, it adds experimental pointer support and an import-map based mocking mode, along with trace-view enhancements including optional aria snapshot capture.

    BreakingFeatures
  • v4.1.12

    v4.1.12 includes a backport related to vitest browser mocking, specifically hardening manual and redirect mocks. The code diff also shows several browser-provider behavior changes and capability removals (notably around file-writing permissions and webdriverio command support) that are not mentioned in the release notes.

  • v5.0.5

    Release v5.0.5 is documented as a set of Vitest bug fixes, including behavior tweaks for CLI options, `import.meta.hot` stubs, hook cleanup handling, browser-mode event handling, and reporter crash end-reason reporting. However, the provided code diff mostly shows repository-level CI and contributor workflow changes, not the Vitest runtime/source changes described in the release notes.

  • v5.0.4

    Vitest v5.0.4 focuses on experimental improvements (trace UI controls, test UI theme support, cache enhancements) and a broad set of bug fixes across caching, runner behavior, browser testing, coverage, and expect/mocker. Release notes also mention multiple caching and module graph fixes plus a dependency update sweep.

    Features
  • v5.0.3

    v5.0.3 is presented as a patch release focused on bug fixes across retry/repeats behavior, browser mode warnings, caching, and a few subsystem-specific issues. The provided code diff excerpt, however, shows that a large portion of changes are documentation and website/theme formatting, with only a small amount of API-contract-adjacent documentation updates.

  • v5.0.2

    Vitest v5.0.2 is primarily a bug fix release touching spies, expect matching, jsdom Blob handling, async leak detection, and several reporters. Code changes also include user-facing default option updates reflected in docs, type definitions, and added e2e coverage, which are not called out in the release notes.

  • v5.0.1

    v5.0.1 is primarily a UI and correctness patch, with documented improvements to the browser trace viewer layout and several bug fixes across collections, snapshots, automocking, and configuration edge cases. The release notes do not call out any API or TypeScript type surface changes, but the code diff includes declaration updates that can affect downstream TypeScript consumers.

    Features
  • v5.0.0

    Vitest 5.0.0 is a major release focused on performance and a broad set of behavioral updates, including many documented breaking changes around test discovery, mocking, configuration defaults, and browser support. The included release notes also call out new reporting conventions, improved types, and multiple UI enhancements.

    BreakingFeatures
  • v5.0.0-rc.4

    Vitest v5.0.0-rc.4 shifts test collection for `vitest list` to static parsing by default, and promotes `clearCache` out of the experimental API surface. The release also includes several browser runner and VM runtime fixes, including improved timeout/error reporting and more reliable module linking behavior.

    BreakingFeatures
  • v5.0.0-rc.3

    Vitest v5.0.0-rc.3 focuses on stabilizing and expanding previously experimental and/or UI-adjacent features. The release notes highlight `parseSpecifications` promotion, coverage provider switching to `@vitest/istanbuljs`, and several UI trace/explorer improvements, alongside multiple bug fixes and performance improvements.

    Features
  • v4.1.11

    v4.1.11 is a bug fix release focused on Vitest browser behavior and test lifecycle stability. Documented changes include reviving the global concurrency limit for tests, encoding iframeId in the tester iframe URL, triggering Playwright/Chromium GC under low disk availability, and tightening redirect mocks to the fs allowlist.

    Security
  • v5.0.0-rc.2

    This is a v5.0.0-rc.2 release candidate with no publisher-provided release notes included. Because no change log details are available, there is not enough information to assess potential breaking changes, new features, or fixes from the release notes.

  • v5.0.0-rc.1

    v5.0.0-rc.1 introduces multiple breaking changes around test project configuration, including how inline projects resolve and inherit root config, and how inline projects may share a Vite server. It also changes test behavior for un-awaited async assertions and improves mocking and type support (Temporal mocking, class mock prototype preservation, promise-aware expects).

    BreakingFeatures
  • v5.0.0-beta.7

    v5.0.0-beta.7 focuses on config-resolution refactoring, plus a set of performance improvements around prewarming and caching. The release notes document one breaking change, several new options, and multiple browser/coverage/pool optimizations.

    BreakingFeatures
  • v5.0.0-beta.6

    v5.0.0-beta.6 includes several documented breaking changes around browser screenshot handling, fake timers, webdriverio removal, default mock clearing, and reporter output locations. It also introduces the new vi.when() feature, plus various smaller bug fixes and test UI/coverage/pool improvements.

    BreakingFeatures
  • v4.1.10

    Release v4.1.10 release notes document two bug fixes: a browser-related filesystem access check in builtin commands, and a VM module resolve fix involving encoded URI handling during the deps optimizer query. However, the provided code diff content primarily shows repository and CI workflow changes, with no visible runtime/library code changes that correspond to those two specific issues.

  • v3.2.7

    Release v3.2.7 is described as a small bug fix for browser file system access checks in builtin commands. However, the code diff shows substantial new API and browser API permission controls (write and exec gating), plus internal plumbing changes for V8 coverage collection.

    Security
  • v4.1.9

    v4.1.9 release notes are focused on bug fixes across browser session orchestration readiness, importing hoist behavior for mockers, and preventing test runs from hanging on worker crashes. The provided release notes do not mention any API surface changes or configuration gating changes beyond those readiness-related fixes.

  • v5.0.0-beta.5

    Vitest v5.0.0-beta.5 focuses on browser runner and diagnostics changes, plus CLI and coverage enhancements. The documented breaking changes include stricter config lookup behavior, changes to browser orchestration requiring sessionId, inline handling of @vitest/runner in the browser build, and broader coverage perFile threshold typing.

    BreakingFeatures