Запуск тестовых примеров e2e с использованием proactor и получение сеанса не создано - PullRequest
1 голос
/ 10 апреля 2020

Я написал тестовые примеры e2e с использованием транспортира. Несколько дней назад все работало нормально. Но теперь во время выполнения тестовых случаев.

Я получаю:

сеанс не создан: эта версия ChromeDriver поддерживает только Chrome версия 81 (Информация о драйвере: chromedriver = 81.0. 4044.69

Я уже установил Google Chrome версии 81. Затем я также получаю ту же ошибку. Я попытался переустановить node_modules, но не сработало. Это конфигурация моего protractor.conf. json файл:

const { SpecReporter } = require('jasmine-spec-reporter');
const config = require('./protractor.conf').config;
const puppeteer = require('puppeteer');

/**
 * @type { import("protractor").Config }
 */
exports.config = {
  allScriptsTimeout: 11000,
  specs: [
    './src/**/*.e2e-spec.ts'
  ],
  capabilities: {
    browserName: 'chrome',
    chromeOptions: {
      args: [ "--headless", "--no-sandbox" ],
      binary: puppeteer.executablePath()
    },
  },
  directConnect: true,
  baseUrl: 'http://localhost:4200/',
  framework: 'jasmine',
  jasmineNodeOpts: {
    showColors: true,
    defaultTimeoutInterval: 30000,
    print: function() {}
  },
  onPrepare() {
    require('ts-node').register({
      project: require('path').join(__dirname, './tsconfig.json')
    });
    jasmine.getEnv().addReporter(new SpecReporter({ spec: { displayStacktrace: true } }));
  }
};

1 Ответ

1 голос
/ 11 апреля 2020

Поскольку вы указываете binary: puppeteer.executablePath(), это означает, что транспортир будет использовать браузер, предоставляемый npm пакетом puppeteer, а не браузер, установленный вами самостоятельно.

Таким образом, проблема заключается в версии chrome Браузер, предоставленный 'puppeteer', не 81. Чтобы сделать его версией 81 или изменить версию chromedriver на совместимую с текущим браузером 'puppeteer' chrome. Или удалите эту строку binary: puppeteer.executablePath(), чтобы использовать браузер, который должен быть предварительно установлен на тестовом компьютере вручную.

...