Вы можете избежать этого в системе на основе unix, используя Headless chrome
Это способ запустить браузер Chrome в автономной среде. По сути, запуск Chrome без хрома! Он переносит в командную строку все функции современной веб-платформы, предоставляемые Chromium и механизмом рендеринга Blink.
первый:
настройте karma.conf.js
на использование безголового хрома, например, добавив customLaunchers
:
...
browsers: ['Chrome'],
customLaunchers: {
ChromeNoSandboxHeadless: {
base: 'ChromeHeadless',
flags: ['--no-sandbox']
}
},
во-вторых: попросите ваш package.json
скрипт использовать вашу конфигурацию для тестирования:
"scripts": {
...
"test": "ng test --browsers=ChromeNoSandboxHeadless",
...
},
затем запустите npm run test
или yarn test
, и ваши тесты будут работать без открытия браузера. Вы можете открыть отображаемый url
в предпочитаемых вами браузерах (Firefox, Chrome, Chrome и т. Д.).
второй способ: вы можете отобразить все свои тестовые случаи в консоли, используя Карма-мокко-репортер
- Сначала: установите
npm install karma-mocha-reporter --save-dev
- Во-вторых: требуйте, чтобы ваш репортер находился внутри
karma.conf.js
под plugins
, например, require('karma-mocha-reporter'),
Затем добавьте нового репортера mocha
в свой массив репортеров: reporters: ['mocha', 'progress', 'kjhtml']
Запустите тест с помощью npm run test
или yarn test
отобразит отчет в вашей консоли.
другой способ:
в вашем karma.config.json
обратите внимание на параметр singleRun
(логическое значение по умолчанию - false
). Установите true
, Karma запустится и захватит все настроенные браузеры, запустит тесты, а затем выйдет с кодом выхода 0 или 1 в зависимости от того, прошли ли все тесты или какие-либо тесты не прошли. Альтернативно, запустите его с флагом npm run test --single-run
.
person
billyjov
schedule
08.10.2018