Vitest 是基于 Vite 的新一代测试框架,提供与 Jest 兼容的 API,开箱即用地支持原生 ESM、TypeScript 与 JSX,并与 Vite 应用共享同一套配置、转换器、解析器和插件。
用途:用于编写和运行单元测试,可进行模拟、覆盖率配置与测试相关处理。
主要能力:
- Vite 原生:借助 Vite 转换管线实现类似 HMR 的快速测试更新。
- Jest 兼容:可作为大多数 Jest 测试套件的替代方案。
- 智能监听模式:基于模块图仅重跑受影响的测试。
- 无需配置即可支持 ESM、TypeScript、JSX。
- 多线程 worker 并行执行测试。
- 通过 V8 或 Istanbul 提供内置覆盖率。
- 支持快照测试、模拟与 spy 工具。
- 核心 API 涵盖配置、CLI、test/it、describe、expect 与各类钩子(beforeEach、afterEach、beforeAll、afterAll、aroundEach)。
- 功能涵盖 mocking(vi 工具模拟函数、模块、定时器、日期)、snapshots、coverage、test context(fixtures、test.extend)、concurrency(并发测试、分片)、filtering(按名称、文件模式、标签过滤)、test tags、reporters、benchmarking(基于 Tinybench 的 bench fixture)。
- 高级能力包括 vi 工具(mock、spyOn、fake timers、hoisted、waitFor)、测试环境(node、jsdom、happy-dom、自定义)、类型测试(expectTypeOf、assertType)与多项目工作区。
使用方式:可结合 Vite 配置使用 defineConfig,通过 CLI 命令与选项运行测试,使用 test/it 编写用例、describe 分组、expect 断言,并用钩子管理生命周期。
版本信息:该技能基于 Vitest 5.0.1,生成于 2026-09-25。
限制:资料未提供安装命令、具体配置示例、收费与价格信息,暂未提供。