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

Продвинутый

Node API

Test Runner

Метаданные задач

Расширение репортеров

Кастомный пул

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

Node API ​

WARNING

Vitest предоставляет экспериментальный внутренний API. Обратная совместимость не гарантируется и изменения могут не соответствовать семантическому версионированию (semver). Пожалуйста, зафиксируйте версию Vitest при его использовании.

startVitest ​

Вы можете запустить тесты Vitest, используя его Node API:

js
import { startVitest } from 'vitest/node';

const vitest = await startVitest('test');

await vitest?.close();

Функция startVitest возвращает экземпляр Vitest, если тесты могут быть успешно запущены. Она возвращает undefined в следующих случаях:

  • Vitest не обнаружил пакет vite (обычно устанавливается вместе с Vitest).
  • Включено покрытие кода и режим запуска "test", но пакет для покрытия не установлен (@vitest/coverage-v8 или @vitest/coverage-istanbul).
  • Не установлен пакет окружения (jsdom/happy-dom/@edge-runtime/vm).

Если возвращается undefined или во время выполнения тесты завершились с ошибками, Vitest устанавливает process.exitCode в 1.

Если режим наблюдения не включен, Vitest вызывает метод close.

Если режим наблюдения включен и терминал поддерживает TTY, Vitest регистрирует горячие клавиши.

Вторым аргументом можно передать список фильтров. Vitest запустит только те тесты, пути к файлам которых содержат хотя бы одну из переданных строк.

Кроме того, третьим аргументом можно передать аргументы командной строки (CLI), которые переопределят параметры конфигурации тестов.

В качестве альтернативы, четвертым аргументом можно передать полную конфигурацию Vite, которая будет иметь приоритет над другими пользовательскими параметрами.

createVitest ​

Вы можете создать экземпляр Vitest самостоятельно, используя функцию createVitest. Она возвращает тот же экземпляр Vitest, что и startVitest, но не запускает тесты и не выполняет проверку установленных пакетов.

js
import { createVitest } from 'vitest/node';

const vitest = await createVitest('test', {
  watch: false,
});

parseCLI ​

Вы можете использовать этот метод для разбора аргументов CLI. Он принимает строку (где аргументы разделены одним пробелом) или массив строк аргументов CLI в том же формате, который использует Vitest CLI. Он возвращает фильтр и options, которые вы можете позже передать методам createVitest или startVitest.

ts
import { parseCLI } from 'vitest/node';

parseCLI('vitest ./files.ts --coverage --browser=chrome');

Vitest ​

При создании экземпляра Vitest необходимо указать текущий режим тестирования. Возможные значения:

  • test – для запуска runtime тестов.
  • benchmark – для запуска тестов производительности.

mode ​

test ​

В режиме test выполняются только функции test или it. При обнаружении bench возникает ошибка. В этом режиме для поиска файлов тестов используются параметры include и exclude в конфигурации.

benchmark ​

В режиме benchmark выполняются функции bench. При обнаружении test или it возникает ошибка. Этот режим использует параметры benchmark.include и benchmark.exclude в конфигурации для поиска файлов тестов производительности.

start ​

Вы можете запустить тесты или тесты производительности с помощью метода start. Можно передать массив строк для фильтрации файлов тестов.

Pager
Следующая страницаTest Runner

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

Авторские права (c) 2024 Mithril Contributors

https://v1.vitest.dev/advanced/api

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

Авторские права (c) 2024 Mithril Contributors