【发布时间】:2016-06-14 11:34:41
【问题描述】:
我在多台 PC 中有多个版本的 Firefox,其中一些具有 最新的,即 47,而一些具有旧版本。
我有关注this
并设置 RemoteWebDriver 和 Marionette,下一代 FirefoxDriver 以支持 Firefox 版本 47 进行自动化,如下所示:-
URL server = new URL("http://localhost:4444/wd/hub")
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette", true);
WebDriver webDriver = new RemoteWebDriver(server, capabilities);
webDriver.get("https://www.google.co.in");
它在 Firefox 47 版 上运行良好,但是当我在安装了 Firefox 旧版本 的其他 PC 上运行相同时,它给出了@ 987654328@ 如下:-
引起:org.openqa.selenium.remote.UnreachableBrowserException: 无法安装
rt 一个新的会话。可能的原因是远程地址无效 服务器或br
owser 启动失败。
构建信息:版本:'2.53.0',修订:'35ae25b',时间:'2016-03-15 17:00:58'
系统信息:主机:'com-PC',ip:'192.168.3.3',os.name:'Windows 7', os.arch: '
x86', os.version: '6.1', java.version: '1.8.0_92'
驱动信息:driver.version: MarionetteDriver
原因:org.openqa.selenium.WebDriverException: org.apache.http.conn.HttpHost
ConnectException: 连接到 localhost:3125 [localhost/127.0.0.1] 失败:连接
拒绝:连接
构建信息:版本:'2.53.0',修订:'35ae25b',时间:'2016-03-15 17:00:58'
系统信息:主机:'com-PC',ip:'192.168.3.3',os.name:'Windows 7', os.arch: '
x86', os.version: '6.1', java.version: '1.8.0_92'
驱动信息:driver.version: MarionetteDriver
原因:java.net.ConnectException:连接被拒绝:连接
警告 - 例外:连接被拒绝:连接
当我删除行 capabilities.setCapability("marionette", true); 意味着删除 MarionetteDriver 支持时,它在 Firefox 旧版本 上运行良好,但在 Firefox 版本 47 上提升 exception 即。 UnreachableBrowserExcetion.
所以我的问题是:-
有什么方法可以知道Firefox version 或任何其他解决方案,我可以通过这些解决方案同时使用 旧 和 新 版本的 Firefox??。
我想要一个通用解决方案,我的代码可以智能地知道它何时以MarionetteDriver 开头,何时以FireFoxDriver 开头,基于FireFox Version。
提前谢谢...:)
【问题讨论】:
标签: java selenium firefox selenium-webdriver remotewebdriver