MathKimRobin
MathKimRobin

Reputation: 1500

CircleCi Webdriver Chrome version must be between 70 and 73

I've an error on circleci that i'm not able to understand. It says that Chrome version must be between 70 and 73 when using selenium chrome webdriver.

[21:58:05] I/downloader - curl -o/home/circleci/project/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.45.zip https://chromedriver.storage.googleapis.com/2.45/chromedriver_linux64.zip
[21:58:05] I/update - chromedriver: unzipping chromedriver_2.45.zip
[21:58:05] I/update - chromedriver: setting permissions to 0755 for /home/circleci/project/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.45
[21:58:05] I/launcher - Running 1 instances of WebDriver
[21:58:05] I/direct - Using ChromeDriver directly...
[21:58:06] E/launcher - session not created: Chrome version must be between 70 and 73
  (Driver info: chromedriver=2.45.615279 (12b89733300bd268cff3b78fc76cb8f3a7cc44e5),platform=Linux 4.4.0-141-generic x86_64)
[21:58:06] E/launcher - SessionNotCreatedError: session not created: Chrome version must be between 70 and 73
  (Driver info: chromedriver=2.45.615279 (12b89733300bd268cff3b78fc76cb8f3a7cc44e5),platform=Linux 4.4.0-141-generic x86_64)
    at Object.checkLegacyResponse (/home/circleci/project/node_modules/selenium-webdriver/lib/error.js:546:15)
    at parseHttpResponse (/home/circleci/project/node_modules/selenium-webdriver/lib/http.js:509:13)
    at doSend.then.response (/home/circleci/project/node_modules/selenium-webdriver/lib/http.js:441:30)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
From: Task: WebDriver.createSession()
    at Function.createSession (/home/circleci/project/node_modules/selenium-webdriver/lib/webdriver.js:769:24)
    at Function.createSession (/home/circleci/project/node_modules/selenium-webdriver/chrome.js:761:15)
    at Direct.getNewDriver (/home/circleci/project/node_modules/protractor/built/driverProviders/direct.js:77:33)
    at Runner.createBrowser (/home/circleci/project/node_modules/protractor/built/runner.js:195:43)
    at q.then.then (/home/circleci/project/node_modules/protractor/built/runner.js:339:29)
    at _fulfilled (/home/circleci/project/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/home/circleci/project/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/home/circleci/project/node_modules/q/q.js:796:13)
    at /home/circleci/project/node_modules/q/q.js:556:49
    at runSingle (/home/circleci/project/node_modules/q/q.js:137:13)
[21:58:06] E/launcher - Process exited with error code 199

An unexpected error occurred: undefined

my circleci config file

version: 2
jobs:
  build:
    docker:
      - image: circleci/node:8.11-browsers
    working_directory: ~/project

    steps:
      - checkout
      - restore_cache:
          keys:
            - v1-dependencies-{{ checksum "package.json" }}
            - v1-dependencies-
      - run: npm install
      - save_cache:
          paths:
            - node_modules
          key: v1-dependencies-{{ checksum "package.json" }}
      - run: npm run lint
      - run: npm run e2e

Any idea of what is happening ?

Upvotes: 4

Views: 4810

Answers (4)

xelber
xelber

Reputation: 4637

Check your Chrome version Help -> About Google Chrome. Download the matching Chromedriver from http://chromedriver.chromium.org/downloads Should solve the issue.

Upvotes: 0

HRVHackers
HRVHackers

Reputation: 2873

This isn't a problem specific to Circle CI. I was receiving it on my regular IDE setup. The issue is that your chromedriver no longer matches the browser version.

Steps to fix (I'm using Mac OSX): - Upgrade your chrome browser to latest: currently 74 - Upgrade your chromedriver to latest: you can manually download it from their site, or if installed via brew cask just run brew cask upgrade

Upvotes: 1

esdee
esdee

Reputation: 29

One idea would be to download and install the latest Chrome in the .circleci/config.yml file (similar to @andriy-baran's comment). However, that might use up your build time unless there's a way to cache the Chrome engine directory together with its dependencies.

Upvotes: 0

andriy-baran
andriy-baran

Reputation: 739

This worked for me. In circle.yml

- run:
  name: Install Chrome
  command: |
    wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
    sudo sh -c 'echo "deb [arch=amd64] 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

Other solutions like using -browsers docker images does not work now

Upvotes: 1

Related Questions