Vitest测试框架 vitest

Vitest 是一个基于 Vite 构建的现代化、高性能 JavaScript/TypeScript 单元测试框架。它提供了与 Jest 高度兼容的 API,支持原生 ESM、TypeScript 和 JSX,具备极快的测试热更新和智能监视模式。核心功能包括并行测试、内置覆盖率、快照测试、模块模拟和丰富的断言库,是前端开发中替代 Jest 的轻量高效选择。关键词:Vitest,单元测试,前端测试,JavaScript 测试,TypeScript 测试,Vite,Jest 替代品,测试框架,覆盖率,快照测试。

测试 0 次安装 0 次浏览 更新于 3/1/2026

name: vitest description: Vitest 是由 Vite 驱动的下一代测试框架,提供与 Jest 兼容的 API。适用于编写测试、模拟、配置覆盖率、或处理测试过滤和夹具。 metadata: author: Anthony Fu version: “2026.1.28” source: 生成自 https://github.com/vitest-dev/vitest,脚本位于 https://github.com/antfu/skills

Vitest 是一个由 Vite 驱动的下一代测试框架。它提供了与 Jest 兼容的 API,并原生支持 ESM、TypeScript 和 JSX。Vitest 与您的 Vite 应用程序共享相同的配置、转换器、解析器和插件。

核心特性:

  • Vite 原生: 使用 Vite 的转换管道,实现类似 HMR 的快速测试更新
  • Jest 兼容: 可作为大多数 Jest 测试套件的直接替代品
  • 智能监视模式: 仅根据模块图重新运行受影响的测试
  • 原生支持 ESM、TypeScript、JSX,无需额外配置
  • 多线程工作器,用于并行测试执行
  • 通过 V8 或 Istanbul 提供内置覆盖率报告
  • 快照测试、模拟和间谍工具

此技能基于 Vitest 3.x,生成于 2026-01-28。

核心

主题 描述 参考文档
配置 Vitest 与 Vite 配置集成,defineConfig 的使用 core-config
CLI 命令行界面、命令和选项 core-cli
测试 API test/it 函数,skip、only、concurrent 等修饰符 core-test-api
Describe API describe/suite 用于分组测试和嵌套套件 core-describe
Expect API 断言,包含 toBe、toEqual、匹配器及非对称匹配器 core-expect
钩子 beforeEach、afterEach、beforeAll、afterAll、aroundEach core-hooks

功能

主题 描述 参考文档
模拟 使用 vi 工具模拟函数、模块、计时器、日期 features-mocking
快照 使用 toMatchSnapshot 和行内快照进行快照测试 features-snapshots
覆盖率 使用 V8 或 Istanbul 提供程序的代码覆盖率 features-coverage
测试上下文 测试夹具、context.expect、test.extend 用于自定义夹具 features-context
并发 并发测试、并行执行、分片 features-concurrency
过滤 按名称、文件模式、标签过滤测试 features-filtering

高级

主题 描述 参考文档
Vi 工具 vi 助手:mock、spyOn、假计时器、hoisted、waitFor advanced-vi
环境 测试环境:node、jsdom、happy-dom、自定义环境 advanced-environments
类型测试 使用 expectTypeOf 和 assertType 进行类型级测试 advanced-type-testing
项目 多项目工作区,每个项目不同的配置 advanced-projects