【问题标题】:How to open safari browser using Selenium WebDriver?如何使用 Selenium WebDriver 打开 Safari 浏览器?
【发布时间】:2013-11-27 01:49:17
【问题描述】:

谁能解释一下下面的疑问?

如何使用 Selenium WebDriver 在 safari 浏览器中打开谷歌页面?

我正在使用下面的代码打开 safari 浏览器。

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

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

有人可以帮我解决上述问题吗?

【问题讨论】:

    标签: selenium-webdriver safari


    【解决方案1】:

    首先,如果您有 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/

    【讨论】:

      【解决方案2】:

      先决条件:在 Windows 上安装 Safari(如果尚未安装)

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

        WebDriver driver = new SafariDriver();<br>
        driver.get("https://www.lynda.com/Ripon-Al-Wasim/8496323-1.html");
        

      【讨论】:

        【解决方案3】:

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

        Mac Yosemite OSX 和 Safari 8.0.x 组合以及 Selenium v​​2.45.0 的稳定性要好得多

        【讨论】:

        • 更新(2015 年 6 月 18 日): 随着 Yosemite 10.10.3 和 Safari 8.0.6 的最新更新,Safari 浏览器上的执行变得不稳定且不可靠。 Selenium 脚本最适合 10.10.2 、Safari 8.0.3 和 Selenium 2.45.0 组合。 因此,如果 OSX 提示您进行更新,请不要根据需要安装它们在 Safari 浏览器上运行自动化
        • 如何安装 Safari Extensions 开发者证书?
        【解决方案4】:

        试试这个:

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

        【讨论】:

        • safaridriver.exe在哪里下载?
        • user4643885:请提供safaridriver.exe的下载链接
        【解决方案5】:
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-01-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-31
        相关资源
        最近更新 更多