Closed darinwilson closed 1 year ago
I ran into this as well on both Travis CI and my local. I'm not sure how the version list gets updated, but it appears to be lagging behind the current version since it doesn't contain 115.
Guess we'll need to hard-code it to 114 in the meantime.
Webdrivers::Chromedriver.required_version = "114.0.5735.90"
Note from titusfortner — this is not a long term solution as it will not work for Chrome v116. See https://github.com/titusfortner/webdrivers/issues/247#issuecomment-1648154088 for options
Related? https://developer.chrome.com/blog/chrome-for-testing/
I wonder if this should be updated to query https://github.com/GoogleChromeLabs/chrome-for-testing#json-api-endpoints
Related? https://developer.chrome.com/blog/chrome-for-testing/
I wonder if this should be updated to query https://github.com/GoogleChromeLabs/chrome-for-testing#json-api-endpoints
Yes, I agree this is the issue. According to this page version 115+ is available at that JSON API and version 114 and below use the older download page.
Also failing with rails 3.1 while deploying to Heroku:
/app/vendor/bundle/ruby/3.1.0/gems/webdrivers-5.2.0/lib/webdrivers/network.rb:19:in `get': Net::HTTPClientException: 404 "Not Found" with https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115.0.5790 (Webdrivers::NetworkError)
Same problem with a Rails 7.0 app running on Heroku CI.
Webdrivers::VersionError:
Unable to find latest point release version for 115.0.5790. You appear to be using a non-production version of Chrome. Please set `Webdrivers::Chromedriver.required_version = <desired driver version>` to a known chromedriver version: https://chromedriver.storage.googleapis.com/index.html
# ./spec/system/visit_person_show_spec.rb:99:in `visit_page'
# ./spec/system/visit_person_show_spec.rb:57:in `block (3 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# Webdrivers::NetworkError:
# Net::HTTPClientException: 404 "Not Found" with https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115.0.5790
PRs welcomed.
Or if you are using one of the latest versions of Selenium, you shouldn't need to require this gem any more. 😄
Or if you are using one of the latest versions of Selenium, you shouldn't need to require this gem any more. 😄
This seems to work! thanks @titusfortner 🙇♂️
I got This version of ChromeDriver has not been tested with Chrome version 115.
in the browser console when I tried using the latest version of selenium-webdriver
without webdrivers
.
Not necessarily a deal-breaker, but worth noting.
@Judahmeek check to see if you have an old driver on your system. If selenium finds something else on PATH it will use it without updating.
The warning messages will be more clear in the next release of Selenium.
I tried removing the webdrivers
gem and only using selenium-webdriver
but it seems to be falling back to version 114.x anyway. Using the latest version of selenium-webdriver
(4.10.0).
Got the following output when enabling debug logging for selenium.
We came across this issue too. For those looking for explicit instructions:
We fixed this in our codebase without downgrading Webdrivers::Chromedriver.required_version
by removing webdrivers
from the gem file and running bundle update selenium-webdriver
(since this was already included in our gem file but out of date), as per @titusfortner 's suggestion
I tried removing webdrivers gem and only using selenium-webdriver as per @titusfortner suggestion, however still failing with below error . Using selenium-webdriver (= 3.142.6) version
16:04:00 Selenium::WebDriver::Error::WebDriverError:
16:04:00 Unable to find chromedriver. Please download the server from
16:04:00 https://chromedriver.storage.googleapis.com/index.html and place it somewhere on your PATH.
16:04:00 More info at https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver.
16:04:00 # ./spec/e2e_helper.rb:18:in `block (2 levels) in <top (required)>'
@aviralcht Does it work after upgrading the selenium-webdriver
gem to the latest version?
@aviralcht Does it work after upgrading the
selenium-webdriver
gem to the latest version?
Let me try upgrading it to latest version
@aviralcht Does it work after upgrading the
selenium-webdriver
gem to the latest version?Let me try upgrading it to latest version
Using ruby2.5.5 version, so latest compatible version of selenium-webserver
is 4.0.0
.
@yourivdlans / @titusfortner will this version help in replacing webdrivers
gem and solving this issue?
@yourivdlans And it turns out that Selenium added support for the new location of v115 after Selenium 4.10 was released, so we need to wait for 4.11 to be released, and there's a few things that still need to be done before we can do that.
In the meantime, chromedriver 114 should still work just fine with Chrome 115 even if warnings are displayed.
Selenium and webdrivers gems both only support versions of Ruby that are not EOL. If you can't update to a supported version of Ruby, you'll likely need to monkey patch or manually put the updated driver in a directory on PATH.
@aviralcht it needs to be Selenium 4.6 or greater, but best experience with Selenium Manager will be using the latest version of Selenium.
@titusfortner Got it, thanks!
Thanks, everyone for the quick replies! It looks like the TL;DR for solutions is either to:
selenium-webdriver
and remove the webdrivers
gem, if you can (this worked for me); orrequired_version
to a known good version@titusfortner Since we have two workarounds, I think we can close this, unless you think there should be code changes to webdrivers
and we should keep this open?
I think that Selenium Manager can now do everything that this gem does (and in a better way), but there are likely going to be edge cases or things that need to be addressed.
The real problem is that the second option will break when Chrome v116 is released. By default chromedriver only works for the current and one future version. I suspect there will be people that can't/don't want to update to the latest version of Selenium who want to test Chrome v116+. For those people this gem will likely need to be updated to support it.
It probably isn't even that hard, I just don't have bandwidth right now for it...
For a little extra context, the Chrome team updated the ChromeDriver release process, and isn't publishing new versions to the old location:
The download location for ChromeDriver releases is changing.
This applies to both the old ChromeDriver Stable + Beta downloads at https://chromedriver.storage.googleapis.com/ as well as the old Canary downloads at https://chromedriver.chromium.org/chromedriver-canary. We’ll stop publishing new downloads to these locations in the future.
Consult the Chrome for Testing availability dashboard to learn about the new URL format. Use @puppeteer/browsers to easily download and launch browser + driver binaries, or build your own custom solution using our JSON API endpoints.
Yeah the new Chrome for Testing is going to make it easier to do some cool things. Selenium is eventually going to allow doing automatic browser downloads as well as automatic driver downloads based on what browser version gets passed to the Options class.
I tried using selenium-webdriver directly, but the thing is, that we need to configure VCR
to ignore requests to the webdriver URLs (see also https://blog.pablobm.com/2021/10/14/vcr-webdriver-errors.html:
VCR.configure do |c|
driver_hosts = Webdrivers::Common.subclasses.map { |driver| URI(driver.base_url).host }
c.ignore_hosts(*(%w[127.0.0.1 localhost] + driver_hosts))
Is there a way to do this with selenium-webdriver
as well and is it even necessary to do so?
@rnestler starting with Selenium 4.11, we'll be getting chromedriver info/downloads from https://googlechromelabs.github.io/chrome-for-testing/
We came across this issue too. For those looking for explicit instructions:
We fixed this in our codebase without downgrading
Webdrivers::Chromedriver.required_version
by removingwebdrivers
from the gem file and runningbundle update selenium-webdriver
(since this was already included in our gem file but out of date), as per @titusfortner 's suggestion
I did what @willzoltan said, I removed the webdrivers
gem and upgraded selenium-webdriver
to v4.10.0 and I started to get this error when running specs relate to the Capybara config:
Capybara.page.driver.browser.manage.window.resize_to(1440, 990)
I updated the capybara
gem to the lates version v3.39.2 and it seemed to get fixed, or a least I got another error:
± rspec spec/system/projects/leave_project_spec.rb
2023-07-20 14:24:21 INFO Selenium [:logger_info] Details on how to use and modify Selenium logger:
https://selenium.dev/documentation/webdriver/troubleshooting/logging
2023-07-20 14:24:21 ERROR Selenium [:selenium_manager] Wrong browser/driver version
2023-07-20 14:24:22 ERROR Selenium [:selenium_manager] Wrong browser/driver version
F2023-07-20 14:24:22 ERROR Selenium [:selenium_manager] Wrong browser/driver version
2023-07-20 14:24:23 ERROR Selenium [:selenium_manager] Wrong browser/driver version
F2023-07-20 14:24:23 ERROR Selenium [:selenium_manager] Wrong browser/driver version
2023-07-20 14:24:23 ERROR Selenium [:selenium_manager] Wrong browser/driver version
F2023-07-20 14:24:23 ERROR Selenium [:selenium_manager] Wrong browser/driver version
2023-07-20 14:24:24 ERROR Selenium [:selenium_manager] Wrong browser/driver version
F
Failures:
1) Leave project I can leave if joined
Got 0 failures and 2 other errors:
1.1) Failure/Error: Capybara.page.driver.browser.manage.window.resize_to(*window_size)
Selenium::WebDriver::Error::NoSuchDriverError:
Unable to obtain chromedriver using Selenium Manager; Unsuccessful command executed: ["/Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager", "--browser", "chrome", "--output", "json"]
Wrong browser/driver version; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/driver_finder.rb:31:in `rescue in path'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/driver_finder.rb:28:in `path'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/local_driver.rb:49:in `process_options'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/local_driver.rb:27:in `initialize_local_driver'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/chrome/driver.rb:34:in `initialize'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/driver.rb:47:in `new'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/driver.rb:47:in `for'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver.rb:88:in `for'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/capybara-3.39.2/lib/capybara/selenium/driver.rb:83:in `browser'
# ./spec/support/helpers/window_sizes.rb:7:in `block (2 levels) in <main>'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:124:in `block in run'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `loop'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:110:in `run'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/rspec-retry-0.6.2/lib/rspec_ext/rspec_ext.rb:12:in `run_with_retry'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/rspec-retry-0.6.2/lib/rspec/retry.rb:37:in `block (2 levels) in setup'
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/webmock-3.18.1/lib/webmock/rspec.rb:37:in `block (2 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# Selenium::WebDriver::Error::WebDriverError:
# Unsuccessful command executed: ["/Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager", "--browser", "chrome", "--output", "json"]
# Wrong browser/driver version
# /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/lib/selenium/webdriver/common/selenium_manager.rb:117:in `run'
1.2) Failure/Error: raise Error::NoSuchDriverError, "Unable to obtain #{klass::EXECUTABLE} using Selenium Manager; #{e.message}"
Selenium::WebDriver::Error::NoSuchDriverError:
Unable to obtain chromedriver using Selenium Manager; Unsuccessful command executed: ["/Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager", "--browser", "chrome", "--output", "json"]
Wrong browser/driver version; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
Any thoughts on what else I should do?
@alexventuraio that's this issue - https://github.com/teamcapybara/capybara/issues/2666 Upgrade capybara as well.
@alexventuraio that's this issue - teamcapybara/capybara#2666 Upgrade capybara as well.
Thanks for you response @titusfortner as in my previous comment I had already upgraded both selenimum-webdrivers
and capybara
gems to their latest versions 4.10.0 and v3.39.2 respectively. But nevertheless, I still had the issue with the webdriver not found:
Selenium::WebDriver::Error::NoSuchDriverError:
Unable to obtain chromedriver using Selenium Manager; Unsuccessful command executed: ["/Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager", "--browser", "chrome", "--output", "json"]
Wrong browser/driver version; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location
I did what is stated in this https://www.selenium.dev/documentation/webdriver/troubleshooting/errors/driver_location/ and I had to download and put the binary somewhere in my path.
Is that they way it should work for now having both gems up to date?
@alexventuraio set Selenium::WebDriver.logger.level = :debug It'll give more info about what selenium manager is seeing.
@titusfortner This is what I got now:
± rspec spec/system/projects/editor/team_members/team_members_show_mode_spec.rb
2023-07-20 17:39:38 INFO Selenium [:logger_info] Details on how to use and modify Selenium logger:
https://selenium.dev/documentation/webdriver/troubleshooting/logging
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] applicable driver not found; attempting to install with Selenium Manager (Beta)
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Selenium Manager binary found at /Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Executing Process ["/Users/alex/.rvm/gems/ruby-3.0.6@devpost-teams/gems/selenium-webdriver-4.10.0/bin/macos/selenium-manager", "--browser", "chrome", "--output", "json", "--debug"]
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Using shell command to find out chrome version
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Running command: "/Applications/Google\\ Chrome.app/Contents/MacOS/Google\\ Chrome --version"
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Output: "Google Chrome 115.0.5790.98 "
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] The version of chrome is 115.0.5790.98
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Detected browser: chrome 115
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Required driver: chromedriver 1.08.115
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Running command: "chromedriver --version"
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Output: ""
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Driver URL: https://chromedriver.storage.googleapis.com/1.08.115/chromedriver_mac64_m1.zip
2023-07-20 17:39:38 DEBUG Selenium [:selenium_manager] Wrong downloaded driver: <?xml version='1.0' encoding='UTF-8'?><Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Details>No such object: chromedriver/1.08.115/chromedriver_mac64_m1.zip</Details></Error>
2023-07-20 17:39:38 ERROR Selenium [:selenium_manager] Wrong browser/driver version
...
1.08.115 is unexpected. @bonigarcia any ideas where that's coming from?
Yes, that happened because the old version of Selenium Manager was not prepared to parse the CfT endpoints, and as a result, this strange behavior occurred. But it is consistent with the Selenium Manager logic since it is trying to parse the content of https://chromedriver.storage.googleapis.com/LATEST_RELEASE_115 (which is no longer available as of Chrome 115) to discover the chromedriver version. A closer look at the response to that request is an XML error file like the following:
<?xml version='1.0' encoding='UTF-8'?><Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message><Details>No such object: chromedriver/LATEST_RELEASE_115</Details></Error>
Internally, Selenium-Manager uses a regex expression to parse the version from the response (numbers and dots), and as a result, the "version" 1.08.115 is obtained. Which, obviously, is incorrect. Eventually, there is an error trying to find that incorrect version.
The solution is to release Selenium 4.11.0 with the new version of Selenium Manager, which already uses the CfT endpoints for Chrome/chromedriver version discovery.
Ah, bad regexp with the new Chrome versioning makes sense. It must be just ARM ones if not everyone is affected?
Either way, we're diligently working to get the last couple things done for the 4.11 release.
It must be just ARM ones if not everyone is affected?
I'm afraid it happens for every platform, since what is failing that chromedriver 115 (all releases) are not published using the former metadata (LATEST_X) but the CfT endpoints.
Then why is it working for some people to use Selenium v4.10? I'm expecting it to see Chrome v115 and use chromedriver v114 right now.
@titusfortner (if there's a better thread on the selenium repo, I can absolutely go there)
starting with Selenium 4.11, we'll be getting chromedriver info/downloads from https://googlechromelabs.github.io/chrome-for-testing/
is there any chance of this being backported to a version with Ruby 2.7 support? I suppose that would have to be 4.9.0.1, since 4.9.0->4.9.1 is when 2.x support was dropped. I'm trying to get a sense of when we might expect consumers on 2.7 to start encountering issues to help prioritize different updates
Then why is it working for some people to use Selenium v4.10?
I think it worked since in some Selenium Manager release (not sure starting in which version, but I'm pretty sure it is available in 4.10.0), there was a (5) retries mechanism to use lower versions than a given version when one failed. This way, when failing to resolve chromedriver 115, it will try 114 (and if it continues failing, 113, 112, and 110).
is there any chance of this being backported to a version with Ruby 2.7 support?
It's unlikely. The open source devs in this ecosystem are pretty comfortable limiting our energies to supported versions of Ruby. I suppose if there was enough interest we could figure out a bounty for it.
It's unlikely.
2.7.8 isn't EOL until end of the year.
Eol for 2.7 was in March https://www.ruby-lang.org/en/downloads/branches/
Hi,
.net issue resolved by using the overload method setUpDriver which accepts the url and binarypath as arguments.
We provided the lastest url for chrome 115 version and local folder path in binary. (Tactical solution)
So there are multiple different issues
(Updating to Selenium 4.10 and removing this gem is essentially doing the same as point 2)
This PR will fix most of this in Selenium 4.11 which we're hoping to get released in the next day or so - https://github.com/SeleniumHQ/selenium/pull/12398
If you can't update to latest Selenium and/or Ruby 3.x and want a better solution from this gem, can you give a ☹️ reaction to this comment?
I'm stuck on older ruby for several more months and my planned, but not yet built, solution is simply going to be to use the https://developer.chrome.com/blog/chrome-for-testing/#how-can-i-get-chrome-for-testing-binaries npx
commands to get the latest browser and driver, as a poor man's webdrivers solution.
I am not totally sure why I just started encountering this problem today (same error message as at top), when I haven't updated any gem versions lately, and the new Chrome version that triggered things has been out for a week or so? I guess something changed in the Github Actions CI environment, where I am now encountering the error -- perhaps caching.
I have read this whole thread trying to understand what's going on, and now understand... some things.
But trying to remove webdrivers
from my Gemfile, with:
When running tests locally on that MacOS box, all of my selenium/chrome-using tests raise this error and do not work:
Selenium::WebDriver::Error::SessionNotCreatedError:
session not created: This version of ChromeDriver only supports Chrome version 103
Current browser version is 114.0.5735.198 with binary path /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
Right, indeed I have a standard desktop Chrome installed at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
, and it is the latest self-updating version, as per usual....
I don't really understand where it's getting what version of "ChromeDriver" that wants chrome 103....
This is perhaps point 3 that @titusfortner mentioned? Or maybe not?
- the current chromedriver v115 only works with Chrome for Testing, not the default installed version of Chrome. So you need to set the binary location of the browser even if you have the right driver (Google is fixing - https://bugs.chromium.org/p/chromium/issues/detail?id=1466427)
I am not sure? I am having trouble understanding if/how that applies to my case and what to do about it if so.
I guess the temporary fix is to set Webdrivers::Chromedriver.required_version = "114.0.5735.90"
, and hope that a more permanent fix comes out before that stops working?
Very odd that this is all blowing up in apparently several different ways all at once. Thank you for your work on webdrivers that has kept things working without me having to think about it for so long -- but now I'm really stymied, and not sure how to get unstuck.
OKAY, after googling, I realized I had an old brew
install of chromedriver.... with webdrivers
it was ignored and didn't cause a problem, but without it, selenium was using that old one and causing a problem.
brew remove chromedriver
was necessary.
After that, running my tests on my MacOS system as above (selenium-webdriver 4.10.0, no webdrivers
gem) , I get this message in console:
WARN Selenium [:selenium_manager] Error getting version of chromedriver 115. Retrying with chromedriver 114 (attempt 1/5)
I don't really understand what's going on there or if it's expected according to above analysis... but despite the warning it currently works and my tests pass again.
@jrochkind
TL/DR - update to Selenium 4.11 when it comes out and everything webdrivers has done should "just work" for 99% of users.
If Selenium finds a driver on PATH it assumes that's the one you want to use, and (for now/probably until Selenium 5) it will not automatically remediate. Selenium Manager is still "opt-in." It will only do things if what you explicitly request is wrong, or the code would otherwise fail.
WARN Selenium [:selenium_manager] Error getting version of chromedriver 115. Retrying with chromedriver 114 (attempt 1/5)
This is because the code to look in the Chrome for Testing location for drivers (necessary for 115) was not added in time for Selenium 4.10. 😞 Thankfully chromedriver 114 will still works for Chrome v115, but it will break when Chrome v116 comes out.
I am having trouble understanding if/how that applies to my case
No. It would be an issue if you manually downloaded chromedriver v115 and tried to use it. Because Selenium 4.10 ends up using chromedriver v114 this isn't a problem.
Selenium 4.11 (out soon, I promise, blame the Java code) will:
browser_version
passed into the Options::Chrome
class. It will accept:
So sorry for this brief period of things being in a bad place. If CfT came out one version later, or if we'd had a little more bandwidth last month, Selenium would have had better errors/warnings for many of these problems. ☹️
But it's made it really easy to implement the final two bullets there (which were just added and tested over the weekend).
Things will be much better soon. Thank you!
Updating to Ruby 3 is going to take awhile for my projects. I'd like to migrate them gracefully and prevent test failures once chrome 116 releases.
I've forked Webdrivers version 4.5.0 which was working well for selenium 3 and updated the Chromedriver class to use the new endpoints for fetching the latest point release and fetching the download url. The System class also needed an update as the zip archive now has a parent directory to the chromedriver file.
Others in a similar situation might find this useful.
@mascolim Thanks for the option. How does your fork account for
the current chromedriver v115 only works with Chrome for Testing, not the default installed version of Chrome. So you need to set the binary location of the browser even if you have the right driver (Google is fixing - https://bugs.chromium.org/p/chromium/issues/detail?id=1466427)
It may be fetching v115 now, but is that working for you on Chrome? If so, I am confused
@dtoms It may be because I'm running in Windows? This is one of the replies in the chromium bug thread.
It turns out Windows is not actually affected by this specific issue, as it hard-codes "chrome.exe" (c.f. https://source.chromium.org/chromium/chromium/src/+/refs/heads/main:chrome/common/chrome_constants.cc;l=71;drc=a328097ef1d47f51e76917b80110863037f4f744).
But we may want to update it anyway for consistency.
tested with chrome 115.0.5790.110. chromedriver 115.0.5790.102 (win32. This is because Webdrivers 4.5.0 only picked up 32 bit versions so I've ported the same behavior. I don't know if this could influence behavior too). selenium-webdriver 3.142.7 jruby 9.2.0.0(Ruby: 2.5.0)
Thank you to all the contributors of this gem. It helped run our tests. Moving to updated selenium-webdriver and removing this gem fixed above issue.
I took a stab at breaking out the code for Selenium Manager, that could let us release that as a separate gem, and webdrivers 6 could then be a thin wrapper of selenium-manager.gem
. Because that code would essentially only be one class, it should be easy enough to make it more flexible with older versions.
Summary
Apologies if this is a dupe of #180 but when running CI on Travis, tests are failing with
Webdrivers::VersionError: Unable to find latest point release version for 115.0.5790
- that version does not appear to exist yet (latest is 114)Debug Info
Expected Behavior
Webdrivers should download latest available version
Actual Behavior
Test fails with the error shown above. This works locally on Apple silicon (I deleted my cached browsers under
~/.webdrivers
and ran tests successfully), but not on Travis.Thank you!