Tools: Errors on Safari 10

Created on 17 Oct 2016  Â·  15Comments  Â·  Source: Polymer/tools

So I am getting the following error:

Failed to connect to SafariDriver after 10064 ms
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'
System info: host: 'lukas-macbook-pro.local', ip: '10.1.1.16', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.6', java.version: '1.8.0_102'
Driver info: driver.version: SafariDriver
safari 10.0 Tests failed: Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started
Test run ended in failure: 8 failed tests, Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started

chrome 54 (0/0/8) safari 10.0 (error)

Error: 8 failed tests, Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started

However for Safari 10 which I have, there is not additional driver, according to selenium.

How can I fix this? I am on OSX 10.11.6

This event happens when using the seed-element:

Installing and starting Selenium server for local browsers
Selenium server running on port 55362
Web server running on port 2000 and serving from /Users/lukasoppermann/Code/seed-element
chrome 54 Beginning tests via http://localhost:2000/components/seed-element/generated-index.html?cli_browser_id=0
chrome 54 Tests passed
Failed to connect to SafariDriver after 10062 ms
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'
System info: host: 'lukas-macbook-pro.local', ip: '10.1.1.16', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.6', java.version: '1.8.0_102'
Driver info: driver.version: SafariDriver
safari 10.0 Tests failed: Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started
Test run ended in failure: Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started

chrome 54 (8/0/0) safari 10.0 (error)

Error: Until Selenium's SafariDriver supports Safari 6.2+, 7.1+, & 8.0+, you must
manually install it. Follow the steps at:
https://github.com/SeleniumHQ/selenium/wiki/SafariDriver#getting-started

web-component-tester wontfix

Most helpful comment

Safari 10 has webdriver built in, but you need to enable it. From https://webkit.org/blog/6900/webdriver-support-in-safari-10/

  • Ensure that the Develop menu is available. It can be turned on by opening Safari preferences (Safari > Preferences in the menu bar), going to the Advanced tab, and ensuring that the Show Develop menu in menu bar checkbox is checked.
  • Enable Remote Automation in the Develop menu. This is toggled via Develop > Allow Remote Automation in the menu bar.
  • Authorize safaridriver to launch the webdriverd service which hosts the local web server. To permit this, run /usr/bin/safaridriver once manually and complete the authentication prompt.

All 15 comments

the stacktrace shows using 2.53.1 of selenium, you need to use 3.0.0 of selenium

Hey @lukeis I think selenium-standalone is included somewhere in wct (looks like this in the npm -g list) so it would need to be updated in the repo, correct?

I would assume so, yes.

@lukeis @lukasoppermann I get same error with version '3.0.1' so it doesn't seems to help

this issue seems to be related https://github.com/SeleniumHQ/selenium/issues/3260

Sorry my bad, my issue is solved simply by killing existing webdriver process.

@elmariofredo killing existing webdriver process? Can you be more descriptive?

I have the same issue I'm on Selenium 3.0.1, El Capitan, Safari 10.0.3. I ran killall webdriverd and same issue even after a restart.

@rafagarcia same as @mroien killall webdriverd but it worked for me. Maybe you are experiencing some other issue.

I ran the killall webdriverd and then Safari at least spins up but my test won't run I get the error

Error: Promise was rejected with the following reason: Error: Build info: version: '3.0.1', revision: '1969d75', time: '2016-10-18 09:48:19 -0700'
System info: host: 'LEFTOUT', ip: 'LEFTOUT', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.12.3', java.version: '1.8.0_121'
Driver info: org.openqa.selenium.safari.SafariDriver
Capabilities [{applicationCacheEnabled=true, rotatable=false, databaseEnabled=true, handlesAlerts=true, version=12602.4.8, cleanSession=true, platform=MAC, nativeEvents=true, locationContextEnabled=false, webStorageEnabled=true, browserName=safari, javascriptEnabled=true, cssSelectorsEnabled=true}]
Session ID: B197BA6A-7BB2-4A4A-82CF-53BAF1B70C1A

As soon as the browser spins up I get the Java GridLauncherV3 open indicating there is an error. I get the glass pane over Safari for the automation too.

Safari 10 has webdriver built in, but you need to enable it. From https://webkit.org/blog/6900/webdriver-support-in-safari-10/

  • Ensure that the Develop menu is available. It can be turned on by opening Safari preferences (Safari > Preferences in the menu bar), going to the Advanced tab, and ensuring that the Show Develop menu in menu bar checkbox is checked.
  • Enable Remote Automation in the Develop menu. This is toggled via Develop > Allow Remote Automation in the menu bar.
  • Authorize safaridriver to launch the webdriverd service which hosts the local web server. To permit this, run /usr/bin/safaridriver once manually and complete the authentication prompt.

I did that ( I think), I have the first two bullet points done, I go to /usr/bin/safaridriver and double click the safaridriver.exec file. And get this

/usr/bin/safaridriver ; exit;

~                                                                              
â–¶ /usr/bin/safaridriver ; exit;
Could not start server: must specify at least one configuration argument.

Usage: safaridriver [options]
    -h, --help                Prints out this usage information.
    -p, --port                Port number the driver should use. If the server
                              is already running, the port cannot be changed.
                              If port 0 is specified, a default port will be used.

[Process completed]

But I don't get a authentication prompt Then I run launchctl list | grep webdriverd and get - 0 com.apple.webdriverd

I had to roll back to selenium-standalone 2.53.1 and add the extension back to Safari and it works. Can anyone confirm they are running Safari 10.0.3 with Selenium 3.0.1.

Is there any resolution for this safari 10 issue for selenium 3.3.1 ?

Still facing this issue with selenium 3.4.0 on EI Capitan 10.11.6 wth safari 10.0.1(installed manually on mac), getting below error:

Exception in thread "main" org.openqa.selenium.WebDriverException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:33774 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1] failed: Connection refused (Connection refused)
Build info: version: '3.4.0', revision: 'unknown', time: 'unknown'
System info: host: 'Arpits-MacBook-Pro.local', ip: '192.168.1.6', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.6', java.version: '1.8.0_131'
Driver info: driver.version: SafariDriver
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:91)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:637)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:250)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:236)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:137)
at org.openqa.selenium.safari.SafariDriver.(SafariDriver.java:60)
at org.openqa.selenium.safari.SafariDriver.(SafariDriver.java:40)
at new_Pkg_NoBroker.NewTC_Trial.main(NewTC_Trial.java:13)
Caused by: org.apache.http.conn.HttpHostConnectException: Connect to localhost:33774 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1] failed: Connection refused (Connection refused)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:159)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:359)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:381)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:237)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:185)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:89)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:111)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:185)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:72)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
at org.openqa.selenium.remote.internal.ApacheHttpClient.fallBackExecute(ApacheHttpClient.java:139)
at org.openqa.selenium.remote.internal.ApacheHttpClient.execute(ApacheHttpClient.java:87)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:343)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:159)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:82)
... 7 more
Caused by: java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at org.apache.http.conn.socket.PlainConnectionSocketFactory.connectSocket(PlainConnectionSocketFactory.java:75)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142)
... 22 more

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Was this page helpful?
0 / 5 - 0 ratings