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

Interactivity API

Локаторы

Assertion API

Команды

Руководство

Несколько конфигураций

Настройка Vitest

Справочник по API тестирования

Расширенный API

Содержание страницы

Настройка Playwright ​

По умолчанию TypeScript не распознает опции провайдеров и дополнительные свойства expect. Убедитесь, что вы ссылаетесь на @vitest/browser/providers/playwright, чтобы TypeScript мог получить определения для пользовательских опций:

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

В качестве альтернативы вы также можете добавить это в поле compilerOptions.types в вашем файле tsconfig.json. Обратите внимание, что любое указание в этом поле отключит автоматическую загрузку пакетов @types/*.

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

Vitest использует одну страницу для запуска всех тестов в одном файле. Вы можете настроить свойства launch, connect и context в instances:

ts
import { defineConfig } from 'vitest/config'

export default defineConfig({
  test: {
    browser: {
      instances: [
        {
          browser: 'firefox',
          launch: {},
          connect: {},
          context: {},
        },
      ],
    },
  },
})

WARNING

До Vitest 3 эти опции находились в свойстве test.browser.providerOptions:

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

providerOptions устарело и заменено на instances.

launch ​

Эти опции напрямую передаются в команду playwright[browser].launch. Вы можете узнать больше о команде и доступных аргументах в документации Playwright.

WARNING

Vitest игнорирует опцию launch.headless. Вместо этого используйте test.browser.headless.

Обратите внимание, что Vitest добавляет отладочные флаги в launch.args, если включен --inspect.

connect 3.2.0+ ​

Эти опции напрямую передаются в команду playwright[browser].connect. Вы можете узнать больше о команде и доступных аргументах в документации Playwright.

WARNING

Поскольку эта команда подключается к существующему серверу Playwright, любые опции launch будут проигнорированы.

context ​

Vitest создает новый контекст для каждого тестового файла, вызывая метод browser.newContext(). Вы можете настроить это поведение, указав пользовательские аргументы.

TIP

Обратите внимание, что контекст создается для каждого тестового файла, а не для каждого теста, в отличие от тестового раннера Playwright.

WARNING

Vitest всегда устанавливает ignoreHTTPSErrors в true, если ваш сервер обслуживается по HTTPS, и serviceWorkers в 'allow' для поддержки мокирования модулей через MSW.

Также рекомендуется использовать test.browser.viewport вместо его указания здесь, так как он теряется при запуске тестов в безголовом режиме.

actionTimeout 3.0.0+ ​

  • По умолчанию: нет таймаута, 1 секунда до 3.0.0

Это значение настраивает таймаут по умолчанию, в течение которого Playwright ожидает завершения всех проверок доступности и выполнения действия.

Вы также можете настроить таймаут для каждого действия отдельно:

ts
import { page, userEvent } from '@vitest/browser/context';

await userEvent.click(page.getByRole('button'), {
  timeout: 1_000,
});
Pager
Предыдущая страницаСправочник по настройке браузера
Следующая страницаНастройка WebdriverIO

Выпущено на условиях лицензии MIT.

Авторские права (c) 2021-Present Vitest Team

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

Выпущено на условиях лицензии MIT.

Авторские права (c) 2021-Present Vitest Team