简体   繁体   English

无法使用 Selenium 和 Java 在 Mac OSX 中启动 Safari 12 浏览器

[英]Unable to launch Safari 12 browser in Mac OSX using Selenium and Java

Recently I updated mac OS to "Mojave version 10.14" and "safari version 12.0" after that i am unable to lunch safari browser.最近我将 mac OS 更新为“Mojave version 10.14”和“safari version 12.0”,之后我无法使用 safari 浏览器。 Earlier it was running fine.早些时候它运行良好。 I am selenium "3.0.0" here is my code:我是硒“3.0.0”这是我的代码:

Scenario 1:场景一:

case "safari":
DesiredCapabilities cap = DesiredCapabilities.safari();
driver = new SafariDriver(cap);
break;

Error:错误:

org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{browserName=safari, safari.options=org.openqa.selenium.safari.SafariOptions@10eff, version=, platform=MAC}], required capabilities = Capabilities [{}]
Build info: version: '3.0.0', revision: '350cf60', time: '2016-10-13 10:48:57 -0700'
System info: host: 'xxxx-MacBook-Pro.local', ip: 'xxxxx', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14', java.version: '1.8.0_131'
Driver info: driver.version: SafariDriver

Scenario 2:场景2:

SafariOptions options = new SafariOptions();
options.setUseTechnologyPreview(true);
WebDriver driver = new SafariDriver(options);
driver.get("http://www.google.com");
driver.quit();

Error:错误:

Exception in thread "main" org.openqa.selenium.WebDriverException: SafariDriver requires Safari 10 running on OSX El Capitan or greater.
Build info: version: '3.0.0', revision: '350cf60', time: '2016-10-13 10:48:57 -0700'
System info: host: 'xxxx-MacBook-Pro.local', ip: 'xxxxx', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14', java.version: '1.8.0_131'
Driver info: driver.version: SafariDriver
    at org.openqa.selenium.safari.SafariDriver.getExecutor(SafariDriver.java:75)
    at org.openqa.selenium.safari.SafariDriver.<init>(SafariDriver.java:62)

In both cases i am unable to run my test cases please someone help me.在这两种情况下,我都无法运行我的测试用例,请有人帮助我。 Thanks .谢谢 。

This error message...这个错误信息...

org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{browserName=safari, safari.options=org.openqa.selenium.safari.SafariOptions@10eff, version=, platform=MAC}], required capabilities = Capabilities [{}] Build info: version: '3.0.0', revision: '350cf60', time: '2016-10-13 10:48:57 -0700' System info: host: 'xxxx-MacBook-Pro.local', ip: 'xxxxx', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.14', java.version: '1.8.0_131'

...implies that the SafariDriver was unable to initiate/spawn a new WebBrowser ie Safari Browser session. ...暗示SafariDriver无法启动/生成新的WebBrowser,Safari 浏览器会话。

Your main issue is the incompatibility between the version of the binaries you are using as follows:您的主要问题是您使用的二进制文件版本之间的不兼容,如下所示:

  • Your Selenium Client version is 3.0.0 of 2016-10-13 10:48:57 -0700 which is almost 2 years older.您的Selenium Client版本是2016-10-13 10:48:57 -0700 的3.0.0 ,几乎比2 年大。
  • Your JDK version is 1.8.0_131 which is pretty ancient.您的JDK 版本1.8.0_131 ,这是非常古老的。

So there is a clear mismatch between the JDK v8u131 , Selenium Client v3.0.0所以JDK v8u131Selenium Client v3.0.0之间存在明显的不匹配

Solution解决方案

  • As an initial step you need to fulfil the following requirement ...SafariDriver requires Safari 10 running on OSX El Capitan or greater...作为第一步,您需要满足以下要求...SafariDriver 需要在 OSX El Capitan 或更高版本上运行 Safari 10...
  • Upgrade JDK to recent levels JDK 8u181 .JDK升级到最新级别JDK 8u181
  • Upgrade Selenium to current levels Version 3.14.0 .Selenium升级到当前级别3.14.0 版
  • Upgrade SafariDriver to current level.SafariDriver升级到当前级别。
  • Upgrade Safari Browser to current level.Safari 浏览器升级到当前级别。
  • Clean your Project Workspace through your IDE and Rebuild your project with required dependencies only.通过IDE清理项目工作区并仅使用所需的依赖项重建项目。
  • If your base Web Browser/Client version is too old, then uninstall it through Revo Uninstaller and install a recent GA and released version of Web Client .如果您的基本Web 浏览器/客户端版本太旧,请通过Revo Uninstaller卸载它并安装最新的 GA 和发布版本的Web Client
  • Execute your @Test .执行你的@Test

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM