Не удалось запустить ошибку браузера / эмулятора в Nightwatch с Browserstack и Ms Edge 17 - PullRequest
0 голосов
/ 21 мая 2019

Я использую Nightwatch с BrowserStack для запуска набора тестов на Ms Edge 17 и получаю следующую ошибку в большинстве сборок.

Error retrieving a new session from the selenium server
Connection refused! Is selenium server started?
{
  value: { message: 'Could not start Browser / Emulator' },
  sessionId: '',
  status: 13
}

У нас точно такой же код работает в браузере Chrome в BrowserStack без каких-либо проблем. Этот пакет работает параллельно с использованием рабочих. Если я отключу рабочих, то это пройдет, к сожалению, нам нужно использовать параллельное выполнение, иначе набор займет слишком много времени.

Я выложу наш конфигурационный файл ниже.

var seleniumJar = require('selenium-server-standalone-jar')
var nightwatchWorkers = parseInt(process.env.NIGHTWATCH_WORKER_THREADS) || 1 
var chromeDriver = process.env.CHROME_DRIVER_PATH || './drivers/chromedriver'
var msEdgeDriverPath = process.env.MSEDGE_DRIVER_PATH || './drivers/MicrosoftWebDriver.exe'
var ie11DriverPath = process.env.MSIE11_DRIVER_PATH || './drivers/IEDriverServer.exe'
var localDockerPort = 4444
var browserStackPort = 80
var browserStackHost = 'hub-cloud.browserstack.com'
var browserStackScreenResolution = '1920x1200'

module.exports = {
  src_folders: ['./tests'],
  output_folder: './results',
  live_output: true, //set to false so each thread will output the whole result of the test when it's done
  silent: true,
  custom_commands_path: './commands',
  custom_assertions_path: './assertions',
  page_objects_path: './pages',
  test_workers: {
    enabled: true,
    workers: nightwatchWorkers
  },

  selenium: {
    start_process: false,
    server_path: seleniumJar.path,
    log_path: './results',
    port: localDockerPort,
    cli_args: {
      'webdriver.chrome.driver': chromeDriver,
      'webdriver.edge.driver': msEdgeDriverPath,
      'webdriver.ie.driver': ie11DriverPath
    }
  },

  test_settings: {
    default: {
      launch_url: 'http://localhost',
      selenium_host: '127.0.0.1',
      selenium_port: localDockerPort,
      silent: true,
      disable_colors: false,
      screenshots: {
        enabled: true,
        on_failure: true,
        path: './results/screenshots'
      },
      desiredCapabilities: {
        browserName: 'chrome',
        resolution: browserStackScreenResolution,
        javascriptEnabled: true,
        acceptSslCerts: true,
        elementScrollBehavior: 1,
        project: 'megarepo',
        build: process.env.BROWSERSTACK_BUILD_ID,
        'browserstack.user': process.env.BROWSERSTACK_USER,
        'browserstack.key': process.env.BROWSERSTACK_KEY
      },
      globals: require('./data/dev')
    },

    browserstack_msedge: {
      selenium: {
        port: browserStackPort
      },
      selenium_host: browserStackHost,
      selenium_port: browserStackPort,
      detailed_output: false,
      desiredCapabilities: {
        os: 'Windows',
        os_version: '10',
        browserName: 'Edge',
        browser_version: '17.0',
        resolution: browserStackScreenResolution
      }
    }
  }
}

У нас точно такой же код работает в браузере Chrome в BrowserStack без каких-либо проблем. Этот пакет работает параллельно с использованием рабочих. Если я отключу рабочих, то это пройдет, к сожалению, нам нужно использовать параллельное выполнение, иначе набор займет слишком много времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...