Skip to content
Vitest 0
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

Начало работы

Функциональность

Рабочее пространство

Интерфейс командной строки

Фильтрация тестов

Покрытие кода

Снапшоты

Мокирование

Тестирование типов

Vitest UI

Режим браузера (экспериментальный)

In-source тестирование (Тестирование в исходном коде)

Контекст теста

Тестовая среда

Расширение проверок (matchers)

Интеграции с IDE

Отладка

Сравнения с другими тестовыми фреймворками

Руководство по миграции

Распространенные ошибки

API

Справочник по Test API

Mock-функции

Vi

expect

expectTypeOf

assertType

Конфигурация

Настройка Vitest

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

Интерфейс командной строки ​

Команды ​

vitest ​

Запускает Vitest в текущей директории. Автоматически активирует режим наблюдения в среде разработки и режим выполнения в CI.

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

bash
vitest foobar

Запустит только те тестовые файлы, пути которых содержат foobar. Этот фильтр проверяет только наличие подстроки и не поддерживает регулярные выражения или glob-шаблоны, если ваш терминал не обрабатывает их перед тем, как Vitest получит фильтр.

vitest run ​

Выполняет однократный запуск тестов без режима наблюдения.

vitest watch ​

Запускает все наборы тестов и отслеживает изменения, перезапуская тесты при их обнаружении. Эквивалентно вызову vitest без аргументов. В CI автоматически переключается на vitest run.

vitest dev ​

Альтернативное название для vitest watch.

vitest related ​

Запускает только те тесты, которые покрывают указанные исходные файлы. Работает со статическими импортами (например, import('./index.ts') или import index from './index.ts')), но не с динамическими (например, import(filepath)). Все файлы должны быть указаны относительно корневой папки проекта.

Полезно при использовании с lint-staged или в вашей системе CI.

bash
vitest related /src/index.ts /src/hello-world.js

TIP

Учтите, что Vitest по умолчанию запускается в режиме наблюдения. Если вы используете такие инструменты, как lint-staged, вам также следует передать опцию --run, чтобы команда могла нормально завершиться.

js
// .lintstagedrc.js
export default {
  '*.{js,ts}': 'vitest related --run',
};

vitest bench ​

Запускает только [тесты производительности (benchmark)], сравнивающие результаты.

Опции ​

Опции
-v, --versionВыводит номер версии Vitest
-r, --root <path>Указывает корневую директорию проекта
-c, --config <path>Указывает путь к файлу конфигурации
-u, --updateОбновляет снепшоты (snapshots)
-w, --watchВключает режим наблюдения с мгновенным откликом на изменения
-t, --testNamePattern <pattern>Запускает тесты, полные имена которых соответствуют указанному шаблону
--dir <path>Базовый каталог для поиска тестовых файлов
--uiВключает пользовательский интерфейс (UI)
--openАвтоматически открывает UI, если он включен (по умолчанию: true)
--api [api]Включает API для взаимодействия с Vitest. Доступные опции: --api.port <port>, --api.host [host] и --api.strictPort
--threadsВключает многопоточность (по умолчанию: true)
--single-threadЗапускает тесты в одном потоке. Требует явного указания --threads (по умолчанию: false)
--experimental-vm-threadsЗапускает тесты в пуле рабочих процессов с использованием изоляции VM (по умолчанию: false)
--experimental-vm-worker-memory-limitУстанавливает максимальный объем памяти, разрешенный для рабочего процесса. При достижении этого лимита будет создан новый рабочий процесс
--silentОтключает вывод в консоль из тестов
--isolateОбеспечивает изоляцию среды для каждого тестового файла (по умолчанию: true)
--reporter <name>Выбирает репортер: default, verbose, dot, junit, json или путь к пользовательскому репортеру
--outputFile <filename/-s>Записывает результаты тестов в файл, если также указана опция --reporter=json или --reporter=junit.
С помощью точечной нотации cac вы можете указать отдельные выходные файлы для нескольких репортеров
--coverageВключает сбор информации о покрытии кода
--runОтключает режим наблюдения
--modeПереопределяет режим Vite (по умолчанию: test)
--mode <name>Переопределяет режим Vite (по умолчанию: test)
--globalsВнедряет API Vitest в глобальную область видимости
--domЭмулирует API браузера с помощью happy-dom
--browser [options]Запускает тесты в браузере (по умолчанию: false)
--environment <env>Указывает среду выполнения тестов (по умолчанию: node)
--passWithNoTestsЗавершается успешно, даже если тесты не найдены
--logHeapUsageПоказывает размер кучи для каждого теста
--allowOnlyРазрешает выполнение тестов и наборов, помеченных как only (по умолчанию: false в CI, true в противном случае)
--dangerouslyIgnoreUnhandledErrorsИгнорирует все необработанные ошибки, возникающие во время выполнения тестов
--changed [since]Запускает тесты, связанные с измененными файлами (по умолчанию: false). См. документацию
--shard <shard>Выполняет тесты в указанном шарде (shard)
--sequenceОпределяет порядок запуска тестов. Используйте [точечную нотацию cac], чтобы указать параметры (например, используйте --sequence.shuffle, чтобы запускать тесты в случайном порядке, или --sequence.shuffle --sequence.seed SEED_ID, чтобы запускать в определенном порядке)
--no-colorУдаляет цвета из вывода консоли
--inspectВключает инспектор Node.js
--inspect-brkВключает инспектор Node.js с остановкой при запуске
--bail <number>Останавливает выполнение тестов, когда заданное количество тестов завершилось с ошибкой
--retry <times>Повторяет тест указанное количество раз, если он завершился с ошибкой
-h, --helpОтображает доступные параметры командной строки

TIP

Vitest поддерживает как camelCase, так и kebab-case для аргументов командной строки. Например, --passWithNoTests и --pass-with-no-tests будут работать одинаково (--no-color и --inspect-brk являются исключениями).

Vitest также поддерживает различные способы указания значения: --reporter dot и --reporter=dot оба допустимы.

Если опция поддерживает массив значений, вам нужно передать опцию несколько раз:

vitest --reporter=dot --reporter=default

Логические опции можно отрицать с помощью префикса no-. Указание значения как false также работает:

vitest --no-api
vitest --api=false

changed ​

  • Тип: boolean | string

  • По умолчанию: false

    Запускает тесты только для измененных файлов. Если значение не указано, будут запущены тесты для незафиксированных изменений (включая подготовленные и неподготовленные).

    Чтобы запустить тесты для изменений, внесенных в последнем коммите, вы можете использовать --changed HEAD~1. Вы также можете передать хэш коммита или имя ветки.

    В сочетании с параметром конфигурации forceRerunTriggers будет запущен весь набор тестов, если будет найдено совпадение.

shard ​

  • Тип: string

  • По умолчанию: отключено

    Разделяет набор тестов на части (шарды) для параллельного выполнения. Формат: <index>/<count>, где:

    • count - это положительное целое число, общее количество шардов
    • index - это положительное целое число, индекс текущего шарда (начиная с 1)

    Эта команда разделит все тесты на count равных частей и выполнит только те, которые принадлежат шарду с индексом index. Например, чтобы разделить набор тестов на три части, используйте следующее:

    sh
    vitest run --shard=1/3
    vitest run --shard=2/3
    vitest run --shard=3/3

WARNING

Эта опция несовместима с включенным режимом --watch (который включен по умолчанию в режиме разработки).

Pager
Предыдущая страницаРабочее пространство
Следующая страницаФильтрация тестов

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

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

https://v0.vitest.dev/guide/cli

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

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