- Home
- Unit Testing
- Vitest
Vitest
What it is
Vitest is a testing framework powered by Vite for JavaScript and TypeScript projects. It can reuse Vite configuration, plugins, resolvers, and transform pipelines, while also offering a mode that runs without Vite. Its Jest-compatible APIs cover assertions, snapshots, and mocking, which can help teams moving from Jest. Watch mode reruns tests related to changed source or test files, and TypeScript, JSX, and ES modules work out of the box. Browser Mode runs tests natively in a browser and supports Playwright and WebdriverIO providers. Component testing covers Vue, React, Svelte, Lit, Marko, and other frameworks. Vitest supports coverage through V8 or Istanbul and benchmarking powered by Tinybench. An official Visual Studio Code extension is available, and StackBlitz lets users try Vitest in a browser without installing it locally. It is free and open source. The listed requirements are Vite 6.4.0 or later and Node 22.12.0 or later; help is available through Discord and GitHub Discussions.
For and against
For
- Free and open source.
- Can reuse Vite configuration and plugins.
- Jest-compatible APIs cover assertions, snapshots, and mocking.
- Browser Mode supports Playwright and WebdriverIO.
- StackBlitz offers browser-based trial without local installation.
Against
- Requires Vite 6.4.0 or later, or use without Vite.
- Requires Node 22.12.0 or later.
- Component testing coverage is described for listed frameworks.
The verdict
Vitest brings Vite integration, Jest-compatible APIs, and browser and component testing into a free framework. Check the Node and Vite requirements before adopting it.
Who it suits
Vitest suits JavaScript and TypeScript developers who want a testing framework that can work with Vite or independently. It may also suit teams seeking browser or component testing and Jest-compatible APIs.
Plans and prices
Free and open source
No plan limits stated
Read 30 Sep 2026 · vitest.dev
On the record
- Benchmarking
- Vitest lists benchmarking support powered by Tinybench.vitest.dev · read 30 Sep 2026
- Browser testing
- Browser Mode runs tests natively in a browser and supports Playwright and WebdriverIO providers.vitest.dev · read 30 Sep 2026
- Component testing
- The features guide lists component testing for Vue, React, Svelte, Lit, Marko, and other frameworks.vitest.dev · read 30 Sep 2026
- Coverage
- Vitest supports code coverage through V8 or Istanbul.vitest.dev · read 30 Sep 2026
- IDE integration
- The getting started guide says Vitest provides an official Visual Studio Code extension.vitest.dev · read 30 Sep 2026
- Jest compatibility
- Vitest offers Jest-compatible APIs for assertions, snapshots, and mocking to support migration from Jest.vitest.dev · read 30 Sep 2026
- Languages
- Vitest provides out-of-the-box support for TypeScript, JSX, and ES modules.vitest.dev · read 30 Sep 2026
- Maintainer
- VoidZero's About page identifies Evan You as Founder and CEO.voidzero.dev · read 30 Sep 2026
- Product
- Vitest is a Vite-powered testing framework.vitest.dev · read 30 Sep 2026
- Requirements
- The getting started guide says Vitest requires Vite 6.4.0 or later and Node 22.12.0 or later.vitest.dev · read 30 Sep 2026
- Security
- The maker's announcement says it plans an enterprise JavaScript tooling solution designed for scale and security requirements; it does not state a Vitest security certification.voidzero.dev · read 30 Sep 2026
- Support
- The guide directs users needing help to the Vitest Discord community and GitHub Discussions.vitest.dev · read 30 Sep 2026
- Try online
- Vitest can be tried in the browser through StackBlitz without installing it locally.vitest.dev · read 30 Sep 2026
- Vite integration
- Vitest can reuse Vite configuration, plugins, resolvers, and transform pipelines, and can also run without Vite.vitest.dev · read 30 Sep 2026
- Watch mode
- Watch mode reruns tests related to changed source or test files.vitest.dev · read 30 Sep 2026