Сначала убедитесь, что вы установили Chrome или Chromium в контейнере док-станции, поскольку журнал показывает ошибку, что нет доступного браузера Chrome и / илипеременная окружения не была установлена.
Нет двоичного файла для браузера Chrome на вашей платформе.Пожалуйста, установите переменную env "CHROME_BIN".
Установите его в alpine linux, как в файле docker здесь, в проекте alpine-chrome .
Затем один разуверен, что Chrome (ium) доступен, файл karama.conf.js должен быть отредактирован для использования ChromeHeadless
.
Вот пример, запущенный для меня в контейнере докера с использованием браузера без монитора и измененного karma.conf.js (который находится в корневой папке углового приложения)
Здесь файл karma.conf.js:
// Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage-istanbul-reporter'),
require('@angular-devkit/build-angular/plugins/karma')
],
client:{
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
coverageIstanbulReporter: {
dir: require('path').join(__dirname, 'coverage'), reports: [ 'html', 'lcovonly' ],
fixWebpackSourcePaths: true
},
angularCli: {
environment: 'dev'
},
reporters: ['progress', 'kjhtml'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['ChromeHeadlessNoSandbox'],
customLaunchers: {
ChromeHeadlessNoSandbox: {
base: 'ChromeHeadless',
flags: ['--no-sandbox','--disable-setuid-sandbox']
}
},
singleRun: false
});
};