【问题标题】:Selenium Server error: Unable to get browserSelenium 服务器错误:无法获取浏览器
【发布时间】:2012-10-02 16:03:39
【问题描述】:

我在 Windows 7 上运行 Selenium Standalone Server 2.25,使用 Internet Explorer 9 作为浏览器,每次需要打开浏览器的测试都会出现此错误:

Selenium::WebDriver::Error::UnknownError:
       Unable to get browser (WARNING: The server did not provide any stacktrace information)
       Command duration or timeout: 10 milliseconds
       Build info: version: '2.25.0', revision: '17482', time: '2012-07-18 21:08:56'
       System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_07'
       Driver info: driver.version: EventFiringWebDriver
       Session ID: 356e9fc8-2d2b-4808-964c-4a1fea7415f9 (org.openqa.selenium.WebDriverException)

我做错了什么? Selenium Server 控制台上显示的信息完全相同。

【问题讨论】:

    标签: selenium internet-explorer-9


    【解决方案1】:

    在 Internet Explorer 中启用所有区域的保护模式设置后错误消失(工具 > Internet 选项 > 安全选项卡)。

    【讨论】:

    • 是的,但奇怪的是,在 IEDriver 的构造函数中它确实会检查这一点,所以它应该告诉你。
    • @Arran 是的。我不知道为什么,但是使用默认的 IE 配置,它并没有说明问题是什么。
    • github.com/SeleniumHQ/selenium/wiki/… 解释了为什么为所有区域启用保护模式将修复此 IE 错误(仍然存在于 IE11 中)
    • 帮了我很多
    【解决方案2】:

    仅适用于 IE 11,您需要在目标计算机上设置一个注册表项,以便驱动程序可以保持与其创建的 Internet Explorer 实例的连接。

    对于 32 位 Windows 安装,您必须在注册表编辑器中检查的键是

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE
    

    对于 64 位 Windows 安装,密钥是

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BFCACHE
    

    请注意FEATURE_BFCACHE 子键可能存在也可能不存在,如果不存在则应创建它。重要提示:在此键中,创建一个名为 iexplore.exeDWORD 值,值为 0

    从以下位置下载注册表文件 http://heliumhq.com/docs/internet_explorer.

    请参阅https://code.google.com/p/selenium/wiki/InternetExplorerDriver 了解更多必要的 IE 配置步骤。

    【讨论】:

    • 现在这很奇怪。直到大约 2 小时前,我的测试在 IE 上没有任何问题。在没有任何更改的情况下,他们突然停止工作,我收到了与 OP 相同的错误消息。但是这个解决方案解决了它。
    【解决方案3】:

    我通常的策略是将需要自动化测试的站点单独添加到 IE 中的“受信任站点”。

    转到工具 > Internet 选项 > 安全性,然后单击受信任的站点和站点按钮并单独添加所需的网站。

    如果您被锁定,可能更容易通过这种方式绕过您的 IT 经理。

    【讨论】:

    • 对 IE 11 的最新版本使用相同的解决方案,使用 32 位版本的 IEDriver(使用 selenium 2.47.1 和 2.50.1 测试)
    【解决方案4】:

    我在 Eclipse 中使用 Selenium,我的解决方案是以管理员身份运行 IDE

    【讨论】:

      【解决方案5】:

      我已经添加了我尝试在受信任站点中访问的网址,在尝试了所有周转之后它对我有用

      【讨论】:

        【解决方案6】:

        你一定要试试这个……

        DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
        
        capabilities.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, true);
        System.setProperty("webdriver.ie.driver",IE_DRIVER_PATH);
        driver = new InternetExplorerDriver(capabilities);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2018-04-01
          • 2017-07-14
          • 2022-01-25
          • 2011-09-04
          • 1970-01-01
          • 1970-01-01
          • 2022-10-13
          • 1970-01-01
          相关资源
          最近更新 更多