Интерфейс командной строки
Команды
vitest
Запускает Vitest в текущем каталоге. Автоматически переходит в режим наблюдения в среде разработки и в режим выполнения в CI (или неинтерактивном терминале).
Вы можете передать дополнительный аргумент в качестве фильтра для запускаемых тестовых файлов. Например:
vitest foobarБудут запущены только те тестовые файлы, пути которых содержат foobar. Этот фильтр проверяет только включение и не поддерживает регулярные выражения или шаблоны glob (если ваш терминал обрабатывает их до того, как Vitest получит фильтр).
Начиная с Vitest 3, вы также можете указать тест по имени файла и номеру строки:
$ vitest basic/foo.test.ts:10WARNING
Обратите внимание, что для корректной работы этой функции Vitest требует полного имени файла. Оно может быть относительным к текущей рабочей директории или абсолютным путем к файлу.
$ vitest basic/foo.js:10 # ✅
$ vitest ./basic/foo.js:10 # ✅
$ vitest /users/project/basic/foo.js:10 # ✅
$ vitest foo:10 # ❌
$ vitest ./basic/foo:10 # ❌На данный момент Vitest также не поддерживает диапазоны:
$ vitest basic/foo.test.ts:10, basic/foo.test.ts:25 # ✅
$ vitest basic/foo.test.ts:10-25 # ❌vitest run
Выполняет один запуск без режима наблюдения.
vitest watch
Запускает все наборы тестов, но наблюдает за изменениями и перезапускает тесты при их изменении. То же самое, что вызов vitest без аргумента. В CI или при неинтерактивном терминале (когда stdin не является TTY) будет автоматически использоваться vitest run.
vitest dev
Псевдоним для vitest watch.
vitest related
Запускает только тесты, которые охватывают список исходных файлов. Работает со статическими импортами (например, import('./index.js') или import index from './index.js), но не с динамическими (например, import(filepath)). Все файлы должны быть относительно корневой папки.
Полезно использовать с lint-staged или с вашей настройкой CI.
vitest related /src/index.ts /src/hello-world.jsTIP
Не забывайте, что Vitest по умолчанию запускается с включенным режимом наблюдения. Если вы используете такие инструменты, как lint-staged, вам также следует передать опцию --run, чтобы команда могла нормально завершиться.
export default {
'*.{js,ts}': 'vitest related --run',
};vitest bench
Запускает только бенчмарк-тесты, которые сравнивают результаты производительности.
vitest init
vitest init <name> может использоваться для настройки конфигурации проекта. На данный момент он поддерживает только значение browser:
vitest init browservitest list
Команда vitest list наследует все опции vitest для вывода списка всех соответствующих тестов. Эта команда не учитывает опцию reporters. По умолчанию выводятся имена всех тестов, которые соответствуют файловому фильтру и шаблону имени:
vitest list filename.spec.ts -t="some-test"describe > some-test
describe > some-test > test 1
describe > some-test > test 2Вы можете передать флаг --json для вывода тестов в формате JSON или сохранения их в отдельном файле:
vitest list filename.spec.ts -t="some-test" --json=./file.jsonЕсли для флага --json не указано значение, JSON будет выведен в stdout.
Вы также можете передать флаг --filesOnly, чтобы вывести только тестовые файлы:
vitest list --filesOnlytests/test1.test.ts
tests/test2.test.tsОпции
TIP
Vitest поддерживает camelCase и kebab-case для аргументов CLI. Например, --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=falseroot
- CLI:
-r, --root <path> - Config: root
Корневой путь проекта.
config
- CLI:
-c, --config <path>
Путь к файлу конфигурации.
update
- CLI:
-u, --update - Config: update
Обновить моментальный снимок (snapshot).
watch
- CLI:
-w, --watch - Config: watch
Включить режим наблюдения за изменениями файлов.
testNamePattern
- CLI:
-t, --testNamePattern <pattern> - Config: testNamePattern
Запускать только те тесты, имена которых полностью соответствуют указанному регулярному выражению.
dir
- CLI:
--dir <path> - Config: dir
Базовый каталог для сканирования тестовых файлов.
ui
- CLI:
--ui - Config: ui
Включить пользовательский интерфейс Vitest.
open
- CLI:
--open - Config: open
Автоматически открывать пользовательский интерфейс (по умолчанию: !process.env.CI).
api.port
- CLI:
--api.port [port]
Указать порт сервера API. Обратите внимание: если порт уже используется, Vite автоматически попытается использовать следующий доступный порт, поэтому это может быть не тот порт, на котором сервер в конечном итоге будет работать. При значении true будет установлено значение 51204.
api.host
- CLI:
--api.host [host]
Укажите, на каких IP-адресах сервер API должен принимать соединения. Установите 0.0.0.0 или true, чтобы принимать соединения на всех адресах, включая локальные и публичные.
api.strictPort
- CLI:
--api.strictPort
Установите значение true, чтобы выйти, если порт уже используется, вместо автоматической попытки использовать следующий доступный порт.
silent
- CLI:
--silent [value] - Config: silent
Тихий вывод консоли из тестов. Используйте 'passed-only', чтобы видеть логи только от провалившихся тестов.
hideSkippedTests
- CLI:
--hideSkippedTests
Скрыть логи для пропущенных тестов.
reporters
- CLI:
--reporter <name> - Config: reporters
Указать репортеры (default, basic, blob, verbose, dot, json, tap, tap-flat, junit, hanging-process, github-actions).
outputFile
- CLI:
--outputFile <filename/-s> - Config: outputFile
Записывать результаты тестов в файл, если также указан соответствующий репортер. Используйте точечную нотацию cac для отдельных выводов нескольких репортеров (пример: --outputFile.tap=./tap.txt).
coverage.all
- CLI:
--coverage.all - Config: coverage.all
Включать все файлы, даже непротестированные, в отчет о покрытии.
coverage.provider
- CLI:
--coverage.provider <name> - Config: coverage.provider
Выберите инструмент для сбора покрытия кода. Доступные значения: "v8", "istanbul" и "custom".
coverage.enabled
- CLI:
--coverage.enabled - Config: coverage.enabled
Включает сбор данных о покрытии кода. Может быть переопределено с помощью опции CLI --coverage (по умолчанию: false).
coverage.include
- CLI:
--coverage.include <pattern> - Config: coverage.include
Файлы, включенные в покрытие, в формате glob-шаблонов. Может быть указано несколько раз при использовании нескольких шаблонов (по умолчанию: **).
coverage.exclude
- CLI:
--coverage.exclude <pattern> - Config: coverage.exclude
Файлы, которые исключаются из покрытия. Может быть указано несколько раз при использовании нескольких шаблонов (по умолчанию: см. coverage.exclude).
coverage.extension
- CLI:
--coverage.extension <extension> - Config: coverage.extension
Расширение, которое будет включено в покрытие. Может быть указано несколько раз при использовании нескольких расширений (по умолчанию: [".js", ".cjs", ".mjs", ".ts", ".mts", ".tsx", ".jsx", ".vue", ".svelte"]).
coverage.clean
- CLI:
--coverage.clean - Config: coverage.clean
Очищать результаты покрытия перед запуском тестов (по умолчанию: true).
coverage.cleanOnRerun
- CLI:
--coverage.cleanOnRerun - Config: coverage.cleanOnRerun
Очищать отчет о покрытии при повторном запуске в режиме наблюдения (по умолчанию: true).
coverage.reportsDirectory
- CLI:
--coverage.reportsDirectory <path> - Config: coverage.reportsDirectory
Каталог для записи отчета о покрытии (по умолчанию: ./coverage).
coverage.reporter
- CLI:
--coverage.reporter <name> - Config: coverage.reporter
Используемые репортеры покрытия. Дополнительную информацию см. на coverage.reporter (по умолчанию: ["text", "html", "clover", "json"]).
coverage.reportOnFailure
- CLI:
--coverage.reportOnFailure - Config: coverage.reportOnFailure
Генерировать отчет о покрытии, даже если тесты провалились (по умолчанию: false).
coverage.allowExternal
- CLI:
--coverage.allowExternal - Config: coverage.allowExternal
Собирать покрытие файлов вне корневого каталога проекта (по умолчанию: false).
coverage.skipFull
- CLI:
--coverage.skipFull - Config: coverage.skipFull
Не показывать файлы со 100% покрытием операторов, ветвлений и функций (по умолчанию: false).
coverage.thresholds.100
- CLI:
--coverage.thresholds.100 - Config: coverage.thresholds.100
Быстрый способ установить все пороги покрытия на 100%.
coverage.thresholds.perFile
- CLI:
--coverage.thresholds.perFile - Config: coverage.thresholds.perFile
Проверять пороги для каждого файла. См. --coverage.thresholds.lines, --coverage.thresholds.functions, --coverage.thresholds.branches и --coverage.thresholds.statements для фактических порогов (по умолчанию: false).
coverage.thresholds.autoUpdate
- CLI:
--coverage.thresholds.autoUpdate - Config: coverage.thresholds.autoUpdate
Обновлять значения порогов: "lines", "functions", "branches" и "statements" в конфигурационном файле, когда текущее покрытие превышает установленные пороги (по умолчанию: false).
coverage.thresholds.lines
- CLI:
--coverage.thresholds.lines <number>
Порог для строк. Дополнительную информацию см. на istanbuljs. Эта опция недоступна для пользовательских провайдеров.
coverage.thresholds.functions
- CLI:
--coverage.thresholds.functions <number>
Порог для функций. Дополнительную информацию см. на istanbuljs. Эта опция недоступна для пользовательских провайдеров.
coverage.thresholds.branches
- CLI:
--coverage.thresholds.branches <number>
Порог для ветвей. Дополнительную информацию см. на istanbuljs. Эта опция недоступна для пользовательских провайдеров.
coverage.thresholds.statements
- CLI:
--coverage.thresholds.statements <number>
Порог для операторов. Дополнительную информацию см. на istanbuljs. Эта опция недоступна для пользовательских провайдеров.
coverage.ignoreClassMethods
- CLI:
--coverage.ignoreClassMethods <name> - Config: coverage.ignoreClassMethods
Массив имен методов класса, которые следует игнорировать для покрытия. Дополнительную информацию см. на istanbuljs. Эта опция доступна только для провайдеров istanbul (по умолчанию: []).
coverage.processingConcurrency
- CLI:
--coverage.processingConcurrency <number> - Config: coverage.processingConcurrency
Ограничение параллелизма, используемое при обработке результатов покрытия (по умолчанию: минимальное значение между 20 и количеством ядер ЦП).
coverage.customProviderModule
- CLI:
--coverage.customProviderModule <path> - Config: coverage.customProviderModule
Задает имя модуля или путь к пользовательскому модулю провайдера покрытия. Дополнительную информацию см. на Custom Coverage Provider. Эта опция доступна только для пользовательских провайдеров.
coverage.watermarks.statements
- CLI:
--coverage.watermarks.statements <watermarks>
Высокие и низкие границы для операторов в формате <high>,<low>.
coverage.watermarks.lines
- CLI:
--coverage.watermarks.lines <watermarks>
Высокие и низкие границы для строк в формате <high>,<low>.
coverage.watermarks.branches
- CLI:
--coverage.watermarks.branches <watermarks>
Высокие и низкие границы для ветвей в формате <high>,<low>.
coverage.watermarks.functions
- CLI:
--coverage.watermarks.functions <watermarks>
Высокие и низкие границы для функций в формате <high>,<low>.
mode
- CLI:
--mode <name> - Config: mode
Переопределяет режим Vite (по умолчанию: test или benchmark).
workspace
- CLI:
--workspace <path> - Config: workspace
[Устарело] Путь к файлу конфигурации рабочей области.
isolate
- CLI:
--isolate - Config: isolate
Выполнять каждый тестовый файл изолированно. Чтобы отключить изоляцию, используйте --no-isolate (по умолчанию: true).
globals
- CLI:
--globals - Config: globals
Инжектировать API Vitest глобально.
dom
- CLI:
--dom
Имитировать API браузера с помощью happy-dom.
browser.enabled
- CLI:
--browser.enabled - Config: browser.enabled
Запускать тесты в браузере (по умолчанию: false).
browser.name
- CLI:
--browser.name <name> - Config: browser.name
Запускать все тесты в определенном браузере. Некоторые браузеры доступны только для определенных провайдеров (см. --browser.provider). Дополнительную информацию см. на browser.name.
browser.headless
- CLI:
--browser.headless - Config: browser.headless
Запускать браузер в безголовом режиме (т.е. без открытия графического интерфейса). Если вы запускаете Vitest в CI, он будет включен по умолчанию (по умолчанию: process.env.CI).
browser.api.port
- CLI:
--browser.api.port [port] - Config: browser.api.port
Указать порт сервера API браузера. Обратите внимание: если порт уже используется, Vite автоматически попытается использовать следующий доступный порт, поэтому это может быть не тот порт, на котором сервер в конечном итоге будет работать. При значении true будет установлено значение 63315.
browser.api.host
- CLI:
--browser.api.host [host] - Config: browser.api.host
Укажите, на каких IP-адресах сервер API браузера должен принимать соединения. Установите 0.0.0.0 или true, чтобы принимать соединения на всех адресах, включая локальные и публичные.
browser.api.strictPort
- CLI:
--browser.api.strictPort - Config: browser.api.strictPort
Установите значение true, чтобы выйти, если порт уже используется, вместо автоматической попытки использовать следующий доступный порт.
browser.provider
- CLI:
--browser.provider <name> - Config: browser.provider
Провайдер, используемый для запуска тестов в браузере. Некоторые браузеры доступны только для определенных провайдеров. Может быть "webdriverio", "playwright", "preview" или путь к пользовательскому провайдеру. Дополнительную информацию см. на browser.provider (по умолчанию: "preview").
browser.providerOptions
- CLI:
--browser.providerOptions <options> - Config: browser.providerOptions
Опции, которые передаются провайдеру браузера. Дополнительную информацию см. на browser.providerOptions.
browser.isolate
- CLI:
--browser.isolate - Config: browser.isolate
Запускать каждый файл браузерного теста изолированно. Чтобы отключить изоляцию, используйте --browser.isolate=false (по умолчанию: true).
browser.ui
- CLI:
--browser.ui - Config: browser.ui
Показывать Vitest UI при запуске тестов (по умолчанию: !process.env.CI).
browser.fileParallelism
- CLI:
--browser.fileParallelism - Config: browser.fileParallelism
Запускать ли файлы браузерных тестов параллельно. Используйте --browser.fileParallelism=false для отключения (по умолчанию: true).
browser.connectTimeout
- CLI:
--browser.connectTimeout <timeout> - Config: browser.connectTimeout
Если подключение к браузеру превышает установленное время, набор тестов завершится с ошибкой (по умолчанию: 60_000).
pool
- CLI:
--pool <pool> - Config: pool
Указать пул, если тесты не запускаются в браузере (по умолчанию: forks).
poolOptions.threads.isolate
- CLI:
--poolOptions.threads.isolate - Config: poolOptions.threads.isolate
Изолировать тесты в пуле потоков (по умолчанию: true).
poolOptions.threads.singleThread
- CLI:
--poolOptions.threads.singleThread - Config: poolOptions.threads.singleThread
Запускать тесты в одном потоке (по умолчанию: false).
poolOptions.threads.maxThreads
- CLI:
--poolOptions.threads.maxThreads <workers> - Config: poolOptions.threads.maxThreads
Максимальное количество или процент потоков для запуска тестов.
poolOptions.threads.minThreads
- CLI:
--poolOptions.threads.minThreads <workers> - Config: poolOptions.threads.minThreads
Минимальное количество или процент потоков для запуска тестов.
poolOptions.threads.useAtomics
- CLI:
--poolOptions.threads.useAtomics - Config: poolOptions.threads.useAtomics
Использовать Atomics для синхронизации потоков. Это может улучшить производительность в некоторых случаях, но может вызвать segfault в старых версиях Node (по умолчанию: false).
poolOptions.vmThreads.isolate
- CLI:
--poolOptions.vmThreads.isolate - Config: poolOptions.vmThreads.isolate
Изолировать тесты в пуле потоков VM (по умолчанию: true).
poolOptions.vmThreads.singleThread
- CLI:
--poolOptions.vmThreads.singleThread - Config: poolOptions.vmThreads.singleThread
Запускать тесты в одном потоке VM (по умолчанию: false).
poolOptions.vmThreads.maxThreads
- CLI:
--poolOptions.vmThreads.maxThreads <workers> - Config: poolOptions.vmThreads.maxThreads
Максимальное количество или процент потоков VM для запуска тестов.
poolOptions.vmThreads.minThreads
- CLI:
--poolOptions.vmThreads.minThreads <workers> - Config: poolOptions.vmThreads.minThreads
Минимальное количество или процент потоков VM для запуска тестов.
poolOptions.vmThreads.useAtomics
- CLI:
--poolOptions.vmThreads.useAtomics - Config: poolOptions.vmThreads.useAtomics
Использовать Atomics для синхронизации потоков VM. Это может улучшить производительность в некоторых случаях, но может вызвать segfault в старых версиях Node (по умолчанию: false).
poolOptions.vmThreads.memoryLimit
- CLI:
--poolOptions.vmThreads.memoryLimit <limit> - Config: poolOptions.vmThreads.memoryLimit
Ограничение памяти для пула потоков VM. Если вы видите утечки памяти, попробуйте скорректировать это значение.
poolOptions.forks.isolate
- CLI:
--poolOptions.forks.isolate - Config: poolOptions.forks.isolate
Изолировать тесты в пуле форков (по умолчанию: true).
poolOptions.forks.singleFork
- CLI:
--poolOptions.forks.singleFork - Config: poolOptions.forks.singleFork
Запускать тесты в рамках одного дочернего процесса (по умолчанию: false).
poolOptions.forks.maxForks
- CLI:
--poolOptions.forks.maxForks <workers> - Config: poolOptions.forks.maxForks
Максимальное количество или процент процессов для запуска тестов.
poolOptions.forks.minForks
- CLI:
--poolOptions.forks.minForks <workers> - Config: poolOptions.forks.minForks
Минимальное количество или процент процессов для запуска тестов.
poolOptions.vmForks.isolate
- CLI:
--poolOptions.vmForks.isolate - Config: poolOptions.vmForks.isolate
Изолировать тесты в пуле форков VM (по умолчанию: true).
poolOptions.vmForks.singleFork
- CLI:
--poolOptions.vmForks.singleFork - Config: poolOptions.vmForks.singleFork
Запускать тесты в одном дочернем процессе VM (по умолчанию: false).
poolOptions.vmForks.maxForks
- CLI:
--poolOptions.vmForks.maxForks <workers> - Config: poolOptions.vmForks.maxForks
Максимальное количество или процент процессов VM для запуска тестов.
poolOptions.vmForks.minForks
- CLI:
--poolOptions.vmForks.minForks <workers> - Config: poolOptions.vmForks.minForks
Минимальное количество или процент процессов VM для запуска тестов.
poolOptions.vmForks.memoryLimit
- CLI:
--poolOptions.vmForks.memoryLimit <limit> - Config: poolOptions.vmForks.memoryLimit
Ограничение памяти для пула форков VM. Если вы видите утечки памяти, попробуйте изменить это значение.
fileParallelism
- CLI:
--fileParallelism - Config: fileParallelism
Запускать ли все тестовые файлы параллельно. Используйте --no-file-parallelism для отключения (по умолчанию: true).
maxWorkers
- CLI:
--maxWorkers <workers> - Config: maxWorkers
Максимальное количество или процент воркеров для запуска тестов.
minWorkers
- CLI:
--minWorkers <workers> - Config: minWorkers
Минимальное количество или процент воркеров для запуска тестов.
environment
- CLI:
--environment <name> - Config: environment
Указать среду выполнения, если тесты не запускаются в браузере (по умолчанию: node).
passWithNoTests
- CLI:
--passWithNoTests - Config: passWithNoTests
Завершать успешно, если тесты не найдены.
logHeapUsage
- CLI:
--logHeapUsage - Config: logHeapUsage
Показывать размер кучи для каждого теста при запуске в среде Node.js.
allowOnly
- CLI:
--allowOnly - Config: allowOnly
Разрешить тесты и наборы, отмеченные как "only" (по умолчанию: !process.env.CI).
dangerouslyIgnoreUnhandledErrors
- CLI:
--dangerouslyIgnoreUnhandledErrors - Config: dangerouslyIgnoreUnhandledErrors
Игнорировать любые возникающие необработанные ошибки.
sequence.shuffle.files
- CLI:
--sequence.shuffle.files - Config: sequence.shuffle.files
Запускать файлы в случайном порядке. Долгие тесты не будут запускаться раньше, если вы включите эту опцию (по умолчанию: false).
sequence.shuffle.tests
- CLI:
--sequence.shuffle.tests - Config: sequence.shuffle.tests
Запускать тесты в случайном порядке (по умолчанию: false).
sequence.concurrent
- CLI:
--sequence.concurrent - Config: sequence.concurrent
Запускать тесты параллельно (по умолчанию: false).
sequence.seed
- CLI:
--sequence.seed <seed> - Config: sequence.seed
Установить начальное значение для рандомизации. Эта опция не будет иметь эффекта, если --sequence.shuffle отключено. Дополнительную информацию см. на странице "Random Seed".
sequence.hooks
- CLI:
--sequence.hooks <order> - Config: sequence.hooks
Изменяет порядок выполнения хуков. Допустимые значения: "stack", "list" и "parallel". Дополнительную информацию см. на sequence.hooks (по умолчанию: "parallel").
sequence.setupFiles
- CLI:
--sequence.setupFiles <order> - Config: sequence.setupFiles
Изменяет порядок выполнения файлов настройки. Допустимые значения: "list" и "parallel". Если установлено "list", файлы настройки выполняются в порядке их определения. Если установлено "parallel", файлы настройки выполняются параллельно (по умолчанию: "parallel").
inspect
- CLI:
--inspect [[host:]port] - Config: inspect
Включить инспектор Node.js (по умолчанию: 127.0.0.1:9229).
inspectBrk
- CLI:
--inspectBrk [[host:]port] - Config: inspectBrk
Включить инспектор Node.js и приостановить выполнение перед началом теста.
testTimeout
- CLI:
--testTimeout <timeout> - Config: testTimeout
Тайм-аут по умолчанию для теста в миллисекундах (по умолчанию: 5000). Используйте 0 для полного отключения тайм-аута.
hookTimeout
- CLI:
--hookTimeout <timeout> - Config: hookTimeout
Тайм-аут по умолчанию для хука в миллисекундах (по умолчанию: 10000). Используйте 0 для полного отключения тайм-аута.
bail
- CLI:
--bail <number> - Config: bail
Остановить выполнение тестов, когда заданное количество тестов провалилось (по умолчанию: 0).
retry
- CLI:
--retry <times> - Config: retry
Повторить тест указанное количество раз, если он провалился (по умолчанию: 0).
diff.aAnnotation
- CLI:
--diff.aAnnotation <annotation> - Config: diff.aAnnotation
Аннотация для ожидаемых строк (по умолчанию: Ожидаемые).
diff.aIndicator
- CLI:
--diff.aIndicator <indicator> - Config: diff.aIndicator
Индикатор для ожидаемых строк (по умолчанию: -).
diff.bAnnotation
- CLI:
--diff.bAnnotation <annotation> - Config: diff.bAnnotation
Аннотация для полученных строк (по умолчанию: Полученные).
diff.bIndicator
- CLI:
--diff.bIndicator <indicator> - Config: diff.bIndicator
Индикатор для полученных строк (по умолчанию: +).
diff.commonIndicator
- CLI:
--diff.commonIndicator <indicator> - Config: diff.commonIndicator
Индикатор для общих строк (по умолчанию: ).
diff.contextLines
- CLI:
--diff.contextLines <lines> - Config: diff.contextLines
Количество строк контекста для отображения вокруг каждого изменения (по умолчанию: 5).
diff.emptyFirstOrLastLinePlaceholder
- CLI:
--diff.emptyFirstOrLastLinePlaceholder <placeholder> - Config: diff.emptyFirstOrLastLinePlaceholder
Плейсхолдер для пустой первой или последней строки (по умолчанию: "").
diff.expand
- CLI:
--diff.expand - Config: diff.expand
Развернуть все общие строки (по умолчанию: true).
diff.includeChangeCounts
- CLI:
--diff.includeChangeCounts - Config: diff.includeChangeCounts
Включать счетчики изменений в вывод diff (по умолчанию: false).
diff.omitAnnotationLines
- CLI:
--diff.omitAnnotationLines - Config: diff.omitAnnotationLines
Исключать строки аннотаций из вывода (по умолчанию: false).
diff.printBasicPrototype
- CLI:
--diff.printBasicPrototype - Config: diff.printBasicPrototype
Печатать базовые прототипы объектов и массивов (по умолчанию: true).
diff.maxDepth
- CLI:
--diff.maxDepth <maxDepth> - Config: diff.maxDepth
Ограничивает глубину рекурсии при печати вложенных объектов (по умолчанию: 20).
diff.truncateThreshold
- CLI:
--diff.truncateThreshold <threshold> - Config: diff.truncateThreshold
Число строк для отображения до и после каждого изменения (по умолчанию: 0).
diff.truncateAnnotation
- CLI:
--diff.truncateAnnotation <annotation> - Config: diff.truncateAnnotation
Аннотация для усеченных строк (по умолчанию: ... Результат сравнения усечен).
exclude
- CLI:
--exclude <glob> - Config: exclude
Дополнительные glob-шаблоны файлов, которые должны быть исключены из тестирования.
expandSnapshotDiff
- CLI:
--expandSnapshotDiff - Config: expandSnapshotDiff
Показывать полный diff при провале снимка.
disableConsoleIntercept
- CLI:
--disableConsoleIntercept - Config: disableConsoleIntercept
Отключить автоматический перехват логирования консоли (по умолчанию: false).
typecheck.enabled
- CLI:
--typecheck.enabled - Config: typecheck.enabled
Включить проверку типов параллельно с тестами (по умолчанию: false).
typecheck.only
- CLI:
--typecheck.only - Config: typecheck.only
Выполнять только тесты проверки типов. Это автоматически включает проверку типов (по умолчанию: false).
typecheck.checker
- CLI:
--typecheck.checker <name> - Config: typecheck.checker
Указать используемый инструмент проверки типов. Доступные значения: "tsc", "vue-tsc" или путь к исполняемому файлу (по умолчанию: "tsc").
typecheck.allowJs
- CLI:
--typecheck.allowJs - Config: typecheck.allowJs
Разрешить проверку типов для файлов JavaScript. По умолчанию использует значение из tsconfig.json.
typecheck.ignoreSourceErrors
- CLI:
--typecheck.ignoreSourceErrors - Config: typecheck.ignoreSourceErrors
Игнорировать ошибки типов в исходных файлах.
typecheck.tsconfig
- CLI:
--typecheck.tsconfig <path> - Config: typecheck.tsconfig
Путь к пользовательскому файлу tsconfig.
typecheck.spawnTimeout
- CLI:
--typecheck.spawnTimeout <time> - Config: typecheck.spawnTimeout
Минимальное время в миллисекундах для запуска инструмента проверки типов.
project
- CLI:
--project <name> - Config: project
Имя проекта для запуска, если вы используете возможность рабочих пространств Vitest. Эту опцию можно повторять для нескольких проектов: --project=1 --project=2. Вы также можете фильтровать проекты с использованием подстановочных знаков, таких как --project=packages*, и исключать проекты с --project=!pattern.
slowTestThreshold
- CLI:
--slowTestThreshold <threshold> - Config: slowTestThreshold
Порог в миллисекундах, по истечении которого тест или набор тестов считается медленным (по умолчанию: 300).
teardownTimeout
- CLI:
--teardownTimeout <timeout> - Config: teardownTimeout
Тайм-аут по умолчанию для функции teardown в миллисекундах (по умолчанию: 10000).
maxConcurrency
- CLI:
--maxConcurrency <number> - Config: maxConcurrency
Максимальное количество одновременно выполняемых тестов в наборе (по умолчанию: 5).
expect.requireAssertions
- CLI:
--expect.requireAssertions - Config: expect.requireAssertions
Требовать, чтобы все тесты содержали хотя бы одно утверждение.
expect.poll.interval
- CLI:
--expect.poll.interval <interval> - Config: expect.poll.interval
Интервал проверки в миллисекундах для утверждений expect.poll() (по умолчанию: 50).
expect.poll.timeout
- CLI:
--expect.poll.timeout <timeout> - Config: expect.poll.timeout
Тайм-аут проверки в миллисекундах для утверждений expect.poll() (по умолчанию: 1000).
printConsoleTrace
- CLI:
--printConsoleTrace - Config: printConsoleTrace
Всегда выводить трассировку стека в консоль.
includeTaskLocation
- CLI:
--includeTaskLocation - Config: includeTaskLocation
Собирает местоположения тестов и наборов в свойстве location.
attachmentsDir
- CLI:
--attachmentsDir <dir> - Config: attachmentsDir
Каталог, в котором хранятся файлы вложений из context.annotate (по умолчанию: .vitest-attachments).
run
- CLI:
--run
Отключить режим наблюдения.
color
- CLI:
--no-color
Удаляет цвета из вывода консоли.
clearScreen
- CLI:
--clearScreen
Очищать экран терминала при повторном запуске тестов в режиме наблюдения (по умолчанию: true).
configLoader
- CLI:
--configLoader <loader>
Использовать bundle для объединения конфигурации с esbuild или runner (экспериментально) для обработки на лету. Это доступно только в Vite версии 6.1.0 и выше (по умолчанию: bundle).
standalone
- CLI:
--standalone
Запускает Vitest без выполнения тестов. Файловые фильтры будут игнорироваться, тесты выполняются только при изменении (по умолчанию: false).
changed
- Тип:
boolean | string - По умолчанию: false
Запускать тесты только для измененных файлов. Если значение не предоставлено, будут запущены тесты для незакоммиченных изменений (как staged, так и unstaged).
Чтобы запустить тесты для изменений, сделанных в последнем коммите, вы можете использовать --changed HEAD~1. Вы также можете передать хеш коммита (например, --changed 09a9920) или имя ветки (например, --changed origin/develop).
При использовании с покрытием кода отчет будет содержать только файлы, относящиеся к изменениям.
В сочетании с опцией конфигурации forceRerunTriggers будет запущен весь набор тестов, если изменится хотя бы один из файлов, перечисленных в списке forceRerunTriggers. По умолчанию изменения в файле конфигурации Vitest и package.json всегда перезапускают весь набор.
shard
- Тип:
string - По умолчанию: disabled
Часть тестового набора для выполнения в формате <index>/<count>, где
count— положительное целое число, количество частейindex— положительное целое число, индекс части
Эта команда разделит все тесты на count равных частей и запустит только те, которые относятся к части index. Например, чтобы разделить ваш набор тестов на три части, используйте следующее:
vitest run --shard=1/3
vitest run --shard=2/3
vitest run --shard=3/3WARNING
Вы не можете использовать эту опцию с включенным --watch (по умолчанию включен в режиме разработки).
TIP
Если --reporter=blob используется без выходного файла, путь по умолчанию будет включать текущую конфигурацию сегмента, чтобы избежать коллизий с другими процессами Vitest.
merge-reports
- Тип:
boolean | string
Объединяет все blob-отчеты, расположенные в указанной папке (по умолчанию .vitest-reports). Вы можете использовать любые репортеры с этой командой (кроме blob):
vitest --merge-reports --reporter=junit