如何使用Selenium WebDriver打开safari浏览器?

时间:2013-11-14 06:30:47

标签: selenium-webdriver safari

有人可以解释我的疑问吗?

如何使用Selenium WebDriver在Safari浏览器中打开google页面?

我使用以下代码打开Safari浏览器。

WebDriver driver = new SafariDriver();
driver.get("http://www.google.com/");

但我得到“SafariDriver请求连接ws:// localhost:40921”错误消息

有人可以帮助我吗?

5 个答案:

答案 0 :(得分:2)

您需要在计算机中安装Safari Extensions Developer Certificate,并在Safari浏览器中安装selenium webdriver作为扩展。 Safari浏览器也存在一些稳定性问题。 Mac 10.9 OS及更低版本的Selenium组合。

在Mac Yosemite OSX& amp; Safari 8.0.x组合以及Selenium v​​2.45.0

答案 1 :(得分:0)

答案 2 :(得分:0)

请改为尝试:

System.setProperty("webdriver.safari.driver","C:/safaridriver.exe")
WebDriver driver = new SafariDriver();

答案 3 :(得分:0)

先决条件:如果尚未安装Safari,请在Windows上安装

  1. 转到http://docs.seleniumhq.org/download/
  2. 向下滚动 - >转到“SafariDriver”部分并下载“SafariDriver.safariextz”
  3. 双击“SafariDriver.safariextz”(之前已下载)
  4. Safari将打开,弹出窗口包含“安装”按钮 - >单击“安装”按钮
  5. 现在转到Safari的偏好设置 - >扩展选项卡:您将看到安装了WebDriver(在我的情况下是WebDriver 2.48.0)(选中了Enable WebDriver复选框))
  6. 现在是时候实例化SafariDriver并使用Java获取所需的URL。请找到代码:

    event['Records'][0]['awsRegion']
    

答案 4 :(得分:0)

首先,如果您使用的是 MacOS High Sierra 及更高版本,则 不需要下载 safaridriver,因为默认情况下它已经存在

   cd /usr/bin
   ls -a

可以在这里查看 safaridriver 已经存在 那么如何在测试文件中配置这个 safaridriver

    private static final String KEY_SAFARI_WEBDRIVER = "webdriver.safari.driver";
    private static final String SAFARI_WEBDRIVER_PATH = "/usr/bin/safaridriver";
    System.setProperty(KEY_SAFARI_WEBDRIVER, SAFARI_WEBDRIVER_PATH);
    WebDriver driver=new SafariDriver();

默认情况下,safari 中禁用了自动化测试选项, 可以从Safari浏览器启用它

Develop -> Allow remote automation

参考:https://www.lambdatest.com/blog/selenium-safaridriver-macos/