mcpField
V
vitest

vitest

github.com/hjewkes测试与质量440 次安装35 周前更新
代码仓库

关于 vitest

Vitest 是面向 Vite 项目的测试框架技能,适用于编写和运行 JavaScript、TypeScript 测试。它提供 Jest 兼容 API,并支持原生 ESM、快照、模拟与覆盖率。

主要功能

  1. 01兼容 Jest 的测试 API
  2. 02原生支持 ESM、TypeScript 和 JSX
  3. 03按模块依赖变化智能重跑
  4. 04多线程并行执行测试
  5. 05覆盖率、快照与模拟工具

适用场景

  1. 01为 Vite 应用编写测试
  2. 02迁移大多数 Jest 测试套件
  3. 03在监视模式下快速重跑受影响测试
  4. 04检查覆盖率并使用快照和模拟

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/hjewkes/agent-skills --skill vitest

安装后在 Claude Code 中输入/vitest确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

GENERATION.md
references/
advanced-environments.md
advanced-projects.md
advanced-type-testing.md
advanced-vi.md
core-cli.md
core-config.md
core-describe.md
core-expect.md
core-hooks.md
core-test-api.md
features-concurrency.md
features-context.md
features-coverage.md
features-filtering.md
features-mocking.md
features-snapshots.md

详细介绍

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
测试 APItest/it 函数,以及 skip、only、concurrent 等修饰符core-test-api
Describe API使用 describe/suite 对测试和嵌套套件分组core-describe
Expect API使用 toBe、toEqual、匹配器和非对称匹配器进行断言core-expect
钩子beforeEach、afterEach、beforeAll、afterAll、aroundEachcore-hooks

功能

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

高级

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

评论

支持 Markdown