angular / webdriver-manager

A binary manager for E2E testing
MIT License
225 stars 117 forks source link

(google-chrome-stable is now at 79.0.x) vs (supported version of webdriver-manager is <=77) :( #436

Open gestj opened 4 years ago

gestj commented 4 years ago

This ends in: Error: SessionNotCreatedError: session not created: This version of ChromeDriver only supports Chrome version 77

Details: In our CI/CD we have docker based e2e testing in place. Since we rebuild regularly our images related third party dependencies get updated. As a result we now have google-chrome-stable with 79.0.3945.79-1 in place. But the webdriver-manager only supports up to 77. ... :( => Buildserver pipelines are broken now.

I can fix it with going back somehow to older build images but what if I wanna update Angular? I can't tag the google-chrome-stable dependency in our image since there is only the latest one always...

Also I wonder why no answers in other related issues are found in this repo. Is this repo not maintained anymore?

giulianabb commented 4 years ago

I was having a similar problem when running with webdriver-manager 12.1.6, but I upgraded to 12.1.7, downloaded the new chromedriver

>webdriver-manager update --chrome.versions=79

And now it works! Hope this helps you somehow

AnthonyMastrean commented 4 years ago

The webdriver-manager only downloads the ChromeDriver from the official site. The ChromeDriver docs indicate how compatibility works. As of three days ago, ChromeDriver supports Chrome 77, 78, and 79.

You might provide more details on what's installed, how it got installed, and what's actually executing when you see this error.

I tested the latest google-chrome-stable in a fresh Docker container

Dockerfile

FROM node

RUN set -eux \
    && echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list \
    && wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | apt-key add - \
    && apt-get update \
    && apt-get install -y --no-install-recommends \
        google-chrome-stable \
        openjdk-8-jre \
    && npm install -g webdriver-manager \
    && webdriver-manager update

ENTRYPOINT ["sh", "-c", "webdriver-manager start"]

And the Selenium server starts up with Chrome 79 just fine.

[16:39:14] I/start - java -Djava.security.egd=file:///dev/./urandom -Dwebdriver.gecko.driver=/usr/local/lib/node_modules/webdriver-manager/selenium/geckodriver-v0.26.0 -Dwebdriver.chrome.driver=/usr/local/lib/node_modules/webdriver-manager/selenium/chromedriver_79.0.3945.36 -jar /usr/local/lib/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.141.59.jar -port 4444
[16:39:14] I/start - seleniumProcess.pid: 17
16:39:14.898 INFO [GridLauncherV3.parse] - Selenium server version: 3.141.59, revision: e82be7d358
16:39:15.032 INFO [GridLauncherV3.lambda$buildLaunchers$3] - Launching a standalone Selenium Server on port 4444
2019-12-19 16:39:15.116:INFO::main: Logging initialized @602ms to org.seleniumhq.jetty9.util.log.StdErrLog
16:39:15.499 INFO [WebDriverServlet.<init>] - Initialising WebDriverServlet
16:39:15.772 INFO [SeleniumServer.boot] - Selenium Server is up and running on port 4444
Nossarian commented 4 years ago

I had been having this issue when I had installed webdriver-manager version 13.0.0, the beta branch.

Make sure you're on the most recent stable version, 12.1.7