vitest

vitest

热门

在编写Vite项目的单元/集成测试时使用 - 配置vitest.config.ts,使用describe/it编写测试套件,使用vi.fn和vi.mock创建模拟实现,设置代码覆盖率阈值,并并行运行测试

693Star
34Fork
更新于 2026/7/27
SKILL.md
readonly只读
name
vitest
description

在编写Vite项目的单元/集成测试时使用 - 配置vitest.config.ts,使用describe/it编写测试套件,使用vi.fn和vi.mock创建模拟实现,设置代码覆盖率阈值,并并行运行测试

Vitest

Vite原生测试框架,兼容Jest API。

使用场景

  • 为Vite项目编写单元/集成测试
  • 测试Vue/React/Svelte组件
  • 模拟模块、定时器或日期
  • 运行并发/并行测试
  • 使用TypeScript进行类型测试

快速开始

npm i -D vitest
// vitest.config.ts
import { defineConfig } from 'vitest/config'

export default defineConfig({
  test: {
    globals: true,
    environment: 'node',  // 或 'jsdom' 用于DOM测试
  },
})
// example.test.ts
import { describe, expect, it, vi } from 'vitest'

describe('math', () => {
  it('adds numbers', () => {
    expect(1 + 1).toBe(2)
  })
})

参考文件

任务 文件
配置、CLI、项目 config.md
test/describe、钩子、夹具 test-api.md
vi.fn、vi.mock、定时器、间谍 mocking.md
expect、快照、覆盖率、过滤 utilities.md
环境、类型测试、浏览器模式 advanced.md

加载文件

根据你的任务考虑加载以下参考文件:

不要一次加载所有文件。 只加载与当前任务相关的文件。

跨技能参考

  • Vue组件测试 → 使用vue技能获取组件模式
  • 库测试 → 使用ts-library技能获取库模式
  • Vite配置 → 使用vite技能获取共享配置