Запуск CRA Jest в неинтерактивном режиме

Обновление: мой вариант использования - это, в основном, запуск тестов в CI, но переопределение параметров CRA Jest по умолчанию - это то, о чем я обычно задумываюсь.


Я запускаю тесты, используя Jest, конфигурацию, которая поставляется с Создать приложение React. Он всегда запускается в интерактивный режим:

 › Press a to run all tests.
 › Press o to only run tests related to changed files.
 › Press p to filter by a filename regex pattern.
 › Press q to quit watch mode.
 › Press Enter to trigger a test run.

Но я не хочу, чтобы он дождался моего ввода. Я хочу, чтобы он запускался один раз, а затем завершался. Я попытался использовать переключатели --bail или --no-watchman, но он все же запускается в интерактивном режиме.

Если я глобально устанавливаю jest и запускаю его в корневом каталоге моего проекта, он выполняется один раз и заканчивается (как я хочу). Но когда я запускаю npm test, который запускает react-scripts test, он переходит в режим просмотра, даже когда я не пропускаю --watch.

Обновление: я также указал на проблему CRA.

Ответ 1

CRA ищет переменную среды CI, если ее присутствует, она не работает в режиме просмотра.

CI=true npm test должен делать то, что вы ищете