Jest CLI Options
Командний рядок Jest
має декілька корисних опцій. Ви можете запустити jest --help
для того щоб переглянути всі наявні опції. Багато опцій, що показані нижче можуть також бути використані разом для того, щоб протестувати саме те, що ви хочете. Кожен з параметрів конфігурації Jest також може бути вказаний як параметр командного рядка.
Ось короткий огляд:
Запуск з командного рядка #
Запустити всі тести (за замовчуванням):
jest
Запустити лише тести за визначеним патерном чи назвою файлу:
jest my-test #or
jest path/to/my-test.js
Запустити тести що мають відношення до змінених файлів (файли які не були закомічені):
jest -o
Запустити тести, які стосуються path/to/fileA.js
і path/to/fileB.js
:
jest --findRelatedTests path/to/fileA.js path/to/fileB.js
Запустити тести, які відповідають назві специфікацій (порівнюються опис в describe
або it
).
jest -t name-of-spec
Запустити режим спостереження:
jest --watch #runs jest -o by default jest --watchAll #runs all tests
Режим спостереження також дозволяє вказувати ім’я або шлях до файлу, щоб сфокусуватися на певному наборі тестів.
Використання з npm скриптами #
Якщо ви запускаєте Jest за допомогою команди npm test
, ви все одно можете використовувати аргументи командного рядка додавши --
між npm test
і аргументами Jest. Замість:
jest -u -t="ColorPicker"
ви можете використовувати:
npm test -- -u -t="ColorPicker"
Параметри командного рядка мають перевагу над параметрами, вказаними в конфігурації.
Опції #
Довідка #
jest <regexForTestFiles>
#
У випадку запуску jest
з аргументом, цей аргумент розглядається як регулярний вираз та порівнюється з файлами у проекті. Існує можливість запускати набори тестів, вказуючи патерн. Тільки тести з файлів, які співпадають з патерном будуть відібрані для виконання. Примітка: в залежності від вашого терміналу, вам може знадобитися додати лапки навколо цього аргументу: jest "my.*(complex)?pattern"
.
--bail
#
Псевдонім: -b
. Завершати виконання тестів як тільки перший тест завершиться з помилкою.
--cache
#
Чи використовувати кеш. За замовчуванням true. Вимкніть кеш, використовуючи --no-cache
. Примітка: кеш варто відключати лише в тоді, коли ви маєте проблеми, пов’язані з кешем. В середньому, відключення кешу робить Jest щонайменше вдвічі повільнішим.
Якщо ви хочетепереглянути або очистити кеш, використайте параметр --showConfig
і знайдіть значення cacheDirectory
.
--ci
#
Коли вказана ця опція, Jest буде думати, що працює в CI середовищі. Це змінює поведінку, коли зустрічається необхідність в створенні нового знімку. Замість звичайної поведінки зі створенням нового знімку, буде викликана помилка тесту і для оновлення знімків буде необхідно запустити Jest з параметром --updateSnapshot
.
--collectCoverageFrom=<glob>
#
Шаблон пошуку файлів відносно кореневого каталогу, для яких потрібно збирати інформацію по покриттю тестами.
--colors
#
Примусово підсвічувати вивід результатів тестів, навіть коли stdout не TTY.
--config=<path>
#
Псевдонім: -c
. Шлях до конфігураційного файлу Jest, який вказує як шукати і виконувати тести. Якщо не вказано rootDir
, поточний каталог вважається кореневим для проекту. Це також може бути JSON рядок, який Jest буде використовувати в якості конфігурації.
--coverage
#
Вказує, що інформація про покриття тестами повинна збиратися і виводитися разом з результатами тестів.
--debug
#
Виводити інформацію для відлагодження щодо вашої конфігурації Jest.
--env=<environment>
#
Тестове оточення, яке буде використане для всіх тестів. Може вказувати на будь-який файл або node модуль. Наприклад: jsdom
, node
або path/to/my-environment.js
.
--expand
#
Псевдонім: -e
. Використовуйте цей параметр, щоб виводити повний diff і помилки замість патчу.
--findRelatedTests <spaceSeparatedListOfSourceFiles>
#
Знайти і запустити тести, які покривають програмний код у файлах зі списку, вказаного через кому і переданого в якості параметра. Корисно для запуску мінімально необхідного набору тестів перед комітом.
--forceExit
#
Змусити Jest примусово завершувати роботу після виконання всіх тестів. Це може бути корисно, якщо ресурси, підготовлені тестовим кодом, не можуть бути коректно очищені. Примітка: Ця опція - це обхідний механізм. Якщо Jest не завершує роботу рісля виконання тестів, це значить, що зовнішні ресурси не звільнено або таймери очікують виконання у вашому коді. Рекомендується звільняти зовнішні ресурси після кожного тесту, щоб Jest міг коректно завершувати роботу.
--help
#
Відобразити довідку, схожу на цю сторінку.
--json
#
Виводити результати тестів в JSON. В цьому режимі Jest буде відправляти увесь інший вивід і користувацькі повідомлення в stderr.
--outputFile=<filename>
#
Писати результати виконання тестів у файл, якщо параметр --json
також вказано.
--lastCommit
#
Виконає всі тести, на які впливають зміни, зроблені в останньому коміті.
--listTests
#
Виводить тести, які Jest би виконував зі вказаними параметрами, як JSON і завершити роботу. Це може бути корисно у поєднанні з --findRelatedTests
, щоб дізнатися, які тести будуть виконані.
--logHeapUsage
#
Виводити дані про використання па’мяті після кожного тесту. Корисно для відлагоджування витоків пам’яті. Використовуйте разом з параметрами --runInBand
та --expose-gc
для Node.
--maxWorkers=<num>
#
Псевдонім: -w
. Вказує максимальну кількість робочих процесів, які можуть бути створені під час виконання тестів. За замовчуванням дорівнює кількості процесорних ядер на вашому комп’ютері. Це може бути корисно в оточеннях з обмеженими ресурсами, таких, як CI, але значення за замовчуванням повинно бути адекватним для більшості випадків.
--noStackTrace
#
Забороняє трасування стеку викликів у виводі результатів тесту.
--notify
#
Активує повідомлення про результати тестів. Зручно, коли ви не хочете забути про виконання тестів, перемкнувшись на виконання іншої роботи.
--onlyChanged
#
Псевдонім: -o
. Пробує визначити, які тести запускати, на основі того, які файли були змінені в поточному репозиторії. Плацює лише якщо ви запускаєте тести всередині git/hg репозиторію і потребує статичного дерева залежностей (тобто без динамічних "require").
--projects <project1> ... <projectN>
#
Запускати тести з одного або кількох проектів.
--runInBand
#
Псевдонім: -i
. Запускати всі тести під ряд, замість створення кількох робочих процесів, які виконують тести. Може бути корисним для відлагодження.
--setupTestFrameworkScriptFile=<file>
#
Шлях до модуля, який виконує якийсь код для налаштування тестового фреймворку перед кожним тестом. Пам’ятайте, що для файлів, які імпортуються всередині цього модуля, не будуть створюватися імітації під час виконання тестів.
--showConfig
#
Виводить конфігурацію Jest і завершує роботу.
--silent
#
Забороняє тестам виводити повідомлення в консоль.
--testNamePattern=<regex>
#
Псевдонім: -t
. Запускає лише тести, назви яких співпадають з регулярним виразом.
--testPathPattern=<regex>
#
Регулярний вираз, який порівнюється зі шляхом до файла з тестами перед його запуском.
--testRunner=<path>
#
Дозволяє вам вказати стороннього виконавця тестів.
--updateSnapshot
#
Псевдонім: -u
. Використофуйте цей параметр, щоб створити заново кожен знімок, який викликав помилку під час виконання тестів. Може бути використаний разом з вказанням шаблону наборів тестів або з --testNamePattern
щоб заново створити знімки.
--useStderr
#
Пренаправити весь вивід в stderr.
--verbose
#
Виводити результати кожного тесту з ієрархією набору тестів.
--version
#
Псевдонім: -v
. Виводить версію і завершує роботу.
--watch
#
Слідкує за файлами, якізмінюються і запускає тести, які їх стосуються. Якщо ви хочете виконати всі тести, коли змінюється будь-який файл, використовуйте параметр --watchAll
.
--watchAll
#
Слідкує за зміною файлів і перезапускає всі тести, якщо будь-який з них буде змінено. Якщо ви хочете перезапускати лише ті тести, які залежать від змінених файлів, використовуйте параметр --watch
.
--watchman
#
Чи використовувати watchman для спостереження за файлами. За замовчуванням true. Відключається за допомогою --no-watchman
.