-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Heroku CI: Webdrivers::VersionError: Failed to find Chrome binary or its version. #134
Comments
Interestingly, executing
the
webdrivers/lib/webdrivers/chrome_finder.rb Lines 6 to 14 in a287cad
|
The problem here is the shim installed by the chrome buildpack. Unfortunately when it's called with
This is mentioned in the heroku/circleci section of the README - https://github.com/titusfortner/webdrivers#herokucircleci-users |
Note -- It would be really great if the heroku/circleci shims were updated to allow them to actually return the version when queried for it. |
Thanks - that's a step in the right direction. These are some wild hoops to jump through for Heroku. The test is now finding the right binary, but now it's hanging with no output. I suspect this is a problem with the buildpack. |
@twalpole @crispinheneise I submitted heroku/heroku-buildpack-google-chrome#73 last night to make |
) This change adds out-of-the-box compatibility with the webdrivers gem, which apparently quite a few Heroku users are using. Currently, the users have to use a workaround in their project to get the Chrome version from $GOOGLE_CHROME_BIN, so that webdrivers can download the appropriate version of chromedriver, and then switch back to $GOOGLE_CHROME_SHIM to launch Chrome. See titusfortner/webdrivers#40, titusfortner/webdrivers#72, and titusfortner/webdrivers#134. This simple change will provide the convenience of not needing any hacks to make the two work :).
The latest version of the google-chrome buildpack no longer needs the workaround described here. We've updated the SHIM to support |
Summary
We're struggling to get our system tests running on Heroku CI, having migrated from chromedriver-helper.
Although the Chrome binary seems to be installed correctly, running the system tests on Heroku CI produces the error:
Webdrivers::VersionError: Failed to find Chrome binary or its version.
Executing the test suite locally, of course everything works great. But on Heroku CI, it's unable to find the Chrome binary. Here's an excerpt from the test log:
Test setup
We are using the chrome buildpacks. In our app.json file we have:
Here's how we're initializing Selenium:
Chrome Binary
The Chrome binary seems to be installed correctly by the buildpack. Here's the result of executing the binary (in the Heroku CI debug console):
Executing that binary produces:
I was also curious what the chromedriver:version rake task would return
Here's the result (using Heroku debug console):
... and here's what I see locally:
The text was updated successfully, but these errors were encountered: