Skip to content
Vitest 3
Main Navigation 指南 & API配置瀏覽器模式進階 API
3.2.0
2.1.9
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

簡介

為何採用瀏覽器模式

瀏覽器模式

配置

瀏覽器配置參考

配置 Playwright

配置 WebdriverIO

API

Context API

互動 API

定位器

斷言 API

命令 API

指南

多重設定

配置參考

測試 API 參考

進階 API

本頁導覽

配置 WebdriverIO ​

Playwright 與 WebdriverIO

如果您的專案尚未採用 WebdriverIO,我們建議優先考慮使用 Playwright,因為其設定更為簡便,且 API 彈性更高。

預設情況下,TypeScript 無法識別提供者選項及額外的 expect 屬性。請務必引入 @vitest/browser/providers/webdriverio,以便 TypeScript 能夠取得自訂選項的定義:

ts
/// <reference types="@vitest/browser/providers/webdriverio" />

或者,您也可以將其加入 tsconfig.json 檔案中的 compilerOptions.types 欄位。請注意,在此欄位中指定任何內容將會停用 @types/* 套件的自動載入功能。

json
{
  "compilerOptions": {
    "types": ["@vitest/browser/providers/webdriverio"]
  }
}

Vitest 會開啟單一頁面來執行同一檔案中的所有測試。您可以在 instances 中設定 RemoteOptions 所指定的任何屬性:

ts
import { defineConfig } from 'vitest/config'

export default defineConfig({
  test: {
    browser: {
      instances: [
        {
          browser: 'chrome',
          capabilities: {
            browserVersion: 86,
            platformName: 'Windows 10',
          },
        },
      ],
    },
  },
})

WARNING

在 Vitest 3 之前,這些選項是透過 test.browser.providerOptions 屬性進行設定的:

ts
export default defineConfig({
  test: {
    browser: {
      providerOptions: {
        capabilities: {},
      },
    },
  },
});

providerOptions 已被棄用,請改用 instances。

您可以在 WebdriverIO 說明文件中找到大多數可用的選項。請注意,Vitest 將會忽略所有測試執行器選項,因為我們僅使用 webdriverio 的瀏覽器能力。

TIP

最實用的選項位於 capabilities 物件中。WebdriverIO 允許巢狀功能,但 Vitest 將會忽略這些選項,因為我們依賴不同的機制來啟動多個瀏覽器。

請注意,Vitest 將會忽略 capabilities.browserName。請改用 test.browser.instances.name。

Pager
上一頁配置 Playwright
下一頁Context API

以 MIT 授權條款 發布。

版權所有 (c) 2021-Present Vitest Team

https://vitest.dev/guide/browser/webdriverio

以 MIT 授權條款 發布。

版權所有 (c) 2021-Present Vitest Team