Запуск Karma с singleRun = false, но также autoWatch = false - PullRequest
0 голосов
/ 10 декабря 2018

В большинстве случаев я хочу, чтобы набор тестов просто запускался и выходил, как и большинство систем, поэтому мой karma.conf.js имеет следующие настройки:

autoWatch: false
singleRun: true

Мой package.json имеет:

"scripts": {
  "test": "NODE_ENV=test ./node_modules/.bin/karma start"
}

Я использую Chrome без головы, так что это позволяет мне просто запустить yarn test, и он отлично работает.

Но иногда, когда я сильно взламываю JS, я хочу более плотную петлю обратной связи.Так как Karma использует настоящий веб-браузер, до запуска моих тестов уходит около 8 секунд, и это раздражает.

Я знаю, что у Karma есть модель клиент / сервер, чтобы решить эту проблему, но я не совсем понимаю, как это сделать.запустить его.Если я переопределю свой singleRun с помощью yarn test --singleRun=false, он, похоже, загрузит сервер и будет сидеть и ждать запуска тестов.Но я не могу понять, как на самом деле заставить его начать тест.Я подумал karma run, но если я попытаюсь сделать это, он просто сидит и ничего не делает.

Самое лучшее, что я могу сделать, - это также включить автоматическую проверку с yarn test --singleRun=false --autoWatch=true.С этим в любое время я сохраняю тестовый файл, он запускает набор тестовых тестов.Обычно это нормально, но мне нравится, когда мой текстовый редактор автоматически сохраняет данные, поэтому иногда он сохраняется с ошибками синтаксиса, когда я в середине работы.В идеале, я бы предпочел просто пробежать сам.

...