Skip to content
Vitest 1
Main Navigation 指南API配置高級
1.6.1
0.34.6

繁體中文

English
简体中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

繁體中文

English
简体中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština
magyar

外觀

Sidebar Navigation

指南

為什麼使用 Vitest

開始使用

功能特性

工作區

命令列界面

測試過濾器

報告器

覆蓋率

快照

模擬(Mocking)

測試類型

Vitest UI

瀏覽器模式

原始碼測試

測試上下文

測試環境

擴展匹配器

IDE 整合支援

偵錯

與其他測試執行器的比較

遷移指南

常見錯誤

提升效能

API

測試 API 參考文件

模擬函數

Vi

expect

expectTypeOf

assert

assertType

配置

管理 Vitest 配置文件

配置 Vitest

本頁導覽

管理 Vitest 配置文件 ​

如果您正在使用 Vite 並且有一個 vite.config 檔案,Vitest 會讀取它,以匹配您的 Vite 應用程式的插件和設定。如果您想要為測試設定不同的設定,或者您的主要應用程式不特別依賴 Vite,您可以選擇:

  • 建立 vitest.config.ts,它將具有較高優先級,並且會覆寫 vite.config.ts 中的設定(Vitest 支援所有傳統的 JS 和 TS 擴展名,但不支援 json);這表示您的 vite.config 中的所有選項都將被忽略。
  • 透過 CLI 傳遞 --config 選項,例如 vitest --config ./path/to/vitest.config.ts。
  • 使用 process.env.VITEST 或 defineConfig 上的 mode 屬性(如果沒有使用 --mode 覆寫,則會設定為 test/benchmark)以在 vite.config.ts 中有條件地套用不同設定。

要設定 vitest 本身,請在您的 Vite 設定中加入 test 屬性。如果您是從 vite 匯入 defineConfig,您還需要在設定檔頂部使用 三斜線指令 來引用 Vitest 類型。

使用 vite 的 defineConfig,您應該遵循以下方式:

ts
/// <reference types="vitest" />
import { defineConfig } from 'vite';

export default defineConfig({
  test: {
    // ... 在此處指定選項。
  },
});

使用 vitest/config 的 defineConfig,您應該遵循以下方式:

ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    // ... 在此處指定選項。
  },
});

您可以取得 Vitest 的預設選項,以便在需要時擴充:

ts
import { configDefaults, defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    exclude: [...configDefaults.exclude, 'packages/template/*'],
  },
});

當使用獨立的 vitest.config.js 時,必要時,您還可以從其他設定檔擴充 Vite 的選項:

ts
import { defineConfig, mergeConfig } from 'vitest/config';
import viteConfig from './vite.config';

export default mergeConfig(
  viteConfig,
  defineConfig({
    test: {
      exclude: ['packages/template/*'],
    },
  })
);

若您的 Vite 設定是以函數形式定義,您可以像這樣定義設定:

ts
import { defineConfig, mergeConfig } from 'vitest/config';
import viteConfig from './vite.config';

export default defineConfig(configEnv =>
  mergeConfig(
    viteConfig(configEnv),
    defineConfig({
      test: {
        exclude: ['packages/template/*'],
      },
    })
  )
);
Pager
上一頁assertType
下一頁配置 Vitest

以 MIT 授權條款 發布。

版權所有 (c) 2024 Mithril Contributors

https://v1.vitest.dev/config/file

以 MIT 授權條款 發布。

版權所有 (c) 2024 Mithril Contributors