Ошибка Chromedriver "версия Chrome должна быть>= 52" с помощью Nightwatch

Я пытаюсь настроить или и с помощью последний chromedriver что говорит поддержка chrome v52-54. Но, когда я пытаюсь запустить тесты, он говорит 'Error: Chrome version must be >=52.0.2743.' вот все, что я использую:

Структура Проекта

|-- nightwatch.json
|-- bin/
|   |-- chromedriver
|   |-- selenium-server-standalone-2.53.1.jar
|-- tests/
|   |-- sample.js
|-- results/
|-- screens/
|-- node_modules/
|   |-- (lots of modules here)

а вот мой конфигурационный файл для ночного дозора:

.Ночной дозор.в JSON

{
  "src_folders" : ["tests"],
  "output_folder" : "results",
  "custom_commands_path" : "",
  "custom_assertions_path" : "",
  "page_objects_path" : "",
  "globals_path" : "",

  "selenium" : {
    "start_process" : true,
    "server_path" : "bin/selenium-server-standalone-2.53.1.jar",
    "log_path" : "results",
    "host" : "127.0.0.1",
    "port" : 4444,
    "cli_args" : {
      "webdriver.chrome.driver" : "bin/chromedriver"
    }
  },

  "test_settings" : {
    "default" : {
      "launch_url" : "http://localhost",
      "selenium_port"  : 4444,
      "selenium_host"  : "localhost",
      "silent": true,
      "screenshots" : {
        "enabled" : true,
        "path" : "screens/"
      },
      "desiredCapabilities": {
        "browserName": "chrome",
        "javascriptEnabled": true,
        "acceptSslCerts": true
      }
    },

    "chrome" : {
      "desiredCapabilities": {
        "browserName": "chrome",
        "javascriptEnabled": true,
        "acceptSslCerts": true
      }
    }
  }
} 

Тесты

я запускаю тесты следующим образом:

nightwatch tests/

и я получаю следующее вывод:

Starting selenium server... started - PID:  3500

[Sample] Test Suite
=======================

Running:  Demo test Google

Error retrieving a new session from the selenium server

Connection refused! Is selenium server started?
{ sessionId: null,
  status: 13,
  state: 'unhandled error',
  value: 
   { message: 'unknown error: Chrome version must be >= 52.0.2743.0n  (Driver info: chromedriver=2.24.417424 (c5c5ea873213ee72e3d0929b47482681555340c3),platform=Linux 3.2.0-56-generic x86_64) (WARNING: The server did not provide any stacktrace information)nCommand duration or timeout: 1.42 secondsnBuild info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'nSystem info: host: 'N/A', ip: 'N/A', os.name: 'Linux', os.arch: 'amd64', os.version: '3.2.0-56-generic', java.version: '1.7.0_111'nDriver info: org.openqa.selenium.chrome.ChromeDriver',
     suppressed: [],
     localizedMessage: 'unknown error: Chrome version must be >= 52.0.2743.0n  (Driver info: chromedriver=2.24.417424 (c5c5ea873213ee72e3d0929b47482681555340c3),platform=Linux 3.2.0-56-generic x86_64) (WARNING: The server did not provide any stacktrace information)nCommand duration or timeout: 1.42 secondsnBuild info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'nSystem info: host: 'N/A', ip: 'N/A', os.name: 'Linux', os.arch: 'amd64', os.version: '3.2.0-56-generic', java.version: '1.7.0_111'nDriver info: org.openqa.selenium.chrome.ChromeDriver',
     buildInformation: 
      { releaseLabel: '2.53.1',
        buildTime: '2016-06-30 17:37:03',
        class: 'org.openqa.selenium.internal.BuildInfo',
        buildRevision: 'a36b8b1',
        hCode: 1900167016 },
     cause: null,
     systemInformation: 'System info: host: 'N/A', ip: 'N/A', os.name: 'Linux', os.arch: 'amd64', os.version: '3.2.0-56-generic', java.version: '1.7.0_111'',
     supportUrl: null,
     class: 'org.openqa.selenium.WebDriverException',
     additionalInformation: 'nDriver info: org.openqa.selenium.chrome.ChromeDriver',
     hCode: 1299270263,
     screen: null },
  class: 'org.openqa.selenium.remote.Response',
  hCode: 1144687147 }

кто-нибудь знает как устранить эту ошибку?

Chrome version must be >= 52.0.2743.0

использует ли chromedriver мою локальную копию chrome? Нужно ли обновлять мой фактический chrome?

3 ответов


использует ли chromedriver мою локальную копию chrome? Нужно ли обновлять мой фактический chrome?

да ChromeDriver является исполняемым файлом, который selenium webdriver использует для управления chrome.

Итак, selenium webdriver запустите установленный chrome из своего местоположения по умолчанию или пользовательского местоположения, которое вы сообщаете selenium webdriver во время инициализации ChromeDriver.

так что в принципе ChromeDriver исполняемый файл просто использовать говорить между браузером chrome и selenium webdriver, чтобы контролировать его, что не означает, что он запускает свой собственный браузер chrome. Он использует установленный браузер chrome.

так что да, вам нужно обновить фактический установленный chrome.


да, ChromeDriver использует локальную установку Chrome. Если вы предпочитаете не обновлять установку Chrome, вы можете указать версию ChromeDriver, которая будет работать с установленной версией Chrome.

вы можете найти совместимые версии Chrome для различных выпусков ChromeDriver вhttps://chromedriver.storage.googleapis.com/2.25/notes.txt (измените "2.25" на более новую версию, если ваша версия Chrome новее, чем указано в списке там.)

если ваша тестовая платформа использует узел.js webdriver-manager, вы можете просто установить необходимую версию ChromeDriver (сохраняя любые уже установленные версии), используя (например, для версии 2.20):

webdriver-manager update --chrome --versions.chrome=2.20

и укажите соответствующую версию ChromeDriver при запуске Selenium через webdriver-manager:

webdriver-manager start --versions.chrome=2.20

если webdriver-manager недоступен, вы можете просто загрузить требуемую версию ChromeDriver и использовать некоторую технику, чтобы передать следующий параметр Команда запуска сервера Selenium:

-Dwebdriver.chrome.driver=/path/to/the/desired/chromedriver_version

если вы используете Ubuntu 16.04 этот код работает:

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

х64

sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'

x32

sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'

Установить/Обновить

sudo apt-get update
sudo apt-get install google-chrome-stable

источник