Безголовый Chrome Проблема с Jenkins для Angular 6 - PullRequest
0 голосов
/ 27 мая 2020

Я запускаю Angular 6 модульных тестов с использованием Karma, и ниже представлена ​​моя конфигурация:

karma.conf. js:

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')
    ],
    customLaunchers: {
      CustomHeadlessChrome: {
        base: "ChromeHeadless",
        flags: [
          "--headless", 
          "--disable-gpu", 
          "--disable-web-security", 
          "--disable-site-isolation-trials",
          "--remote-debugging-port-9222",
          "--no-sandbox"
        ]
      }
    },
    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: ['Chrome'],
    singleRun: true
  });
};

При выполнении тестов я получаю сообщения об ошибках:

[Cannot load browser "CustomHeadlessChrome": it is not registered! Perhaps you are missing some plugin?

После поиска на форумах publi c я обнаружил ниже ресурс, в котором говорится, что это проблема зависимости - Не удается загрузить браузер ChromeHeadless: он не зарегистрирован!

Поэтому я изменил версию зависимостей karma-chrome-launcher на 2.2.0. Но проблема все еще сохраняется. Я также пытался обновить зависимости, связанные с кармой, но проблема все еще сохраняется.

Кто-нибудь, , пожалуйста, помогите здесь?

Ниже мой раздел devDependencies в package.json:

"devDependencies": {
    "@angular-devkit/build-angular": "^0.11.2",
    "@angular/cli": "^6.0.3",
    "@angular/compiler-cli": "^6.0.3",
    "@angular/language-service": "^6.0.3",
    "@types/jasmine": "~2.5.53",
    "@types/jasminewd2": "~2.0.2",
    "@types/jquery": "^3.3.0",
    "@types/node": "^6.0.101",
    "codelyzer": "^4.1.0",
    "jasmine-core": "^2.6.4",
    "jasmine-spec-reporter": "~4.1.0",
    "karma": "^1.7.1",
    "karma-chrome-launcher": "^2.2.0",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^1.4.3",
    "karma-jasmine": "^1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "^5.4.1",
    "ts-node": "~3.2.0",
    "tslint": "~5.7.0",
    "typescript": "^2.7.2"
  }
...