SKILL.md
只读
名称
vitest
描述
Vitest 快速单元测试框架,由 Vite 驱动,兼容 Jest API。适用于编写测试、模拟、配置覆盖率、测试过滤和夹具等场景。
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 |
| 命令行 | 命令行界面、命令和选项 | 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 |






