此文主要讲述 Java 运行 Selenium 脚本时,因 Friefox 浏览器版本与 selenium-server-standalone-x.xx.x.jar 不兼容引起的 org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary 报错解决方法。

希望能对初学 Selenium2 WebUI 自动化测试编程的亲们有所帮助。若有不足之处,敬请大神指正,不胜感激!

之前给朋友初步介绍了 Selenium 启动不同浏览器的脚本编写,对应源码亲们可参阅博文:WebUI自动化实战实例-003-三种浏览器(Chrome、Firefox、IE)启动脚本。今天,在朋友 PC 上运行时,提示如下的错误信息:

 org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
thod startup on commonfix@mozillaonline.com version 0.9
1421571095765 addons.xpi DEBUG Registering manifest for C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095765 addons.xpi DEBUG Loading bootstrap scope from C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095767 addons.xpi DEBUG Calling bootstrap method startup on wx-assistant@mozillaonline.com version 1.1.2
1421571095785 addons.manager DEBUG Registering shutdown blocker for XPIProvider
1421571095785 addons.manager DEBUG Registering shutdown blocker for LightweightThemeManager
1421571095786 addons.manager DEBUG Registering shutdown blocker for OpenH264Provider
1421571095786 addons.manager DEBUG Registering shutdown blocker for PluginProvider
JavaScript error: file:///C:/Users/机器名/AppData/Local/Temp/anonymous2976645405089665816webdriver-profile/extensions/cpmanager@mozillaonline.com/components/mozCNGuard.js, line 287: TypeError: w.gBrowser is undefined
JavaScript warning: resource://addoninstaller/log4moz.js, line 494: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
1421571096533 addons.manager DEBUG Registering shutdown blocker for <unnamed-provider>
1421571096773 addons.xpi-utils DEBUG Starting async load of XPI database C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions.json
*** Blocklist::_loadBlocklistFromFile: blocklist is disabled
1421571097073 addons.xpi-utils DEBUG Async JSON file read took 0 MS
1421571097073 addons.xpi-utils DEBUG Finished async read of XPI database, parsing...
1421571097074 addons.xpi-utils DEBUG Successfully read XPI database
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
A coding exception was thrown in a Promise resolution callback.
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise Full message: TypeError: redeclaration of variable settings
Full stack: @resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 1421571097193 addons.repository DEBUG No addons.json found.
1421571097194 DeferredSave.addons.json DEBUG Save changes
1421571097195 DeferredSave.addons.json DEBUG Starting timer
1421571097250 DeferredSave.addons.json DEBUG Starting write
1421571097253 DeferredSave.addons.json DEBUG Write succeeded at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:118)
at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:114)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:193)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:186)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:182)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:95)
at main.java.aaron.sele.demo.StartBrowerFirefox.FirefoxStart(StartBrowerFirefox.java:39)
at main.java.aaron.sele.demo.StartBrowerFirefox.main(StartBrowerFirefox.java:54)
Exception in thread "main" org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary(C:\Program Files (x86)\Mozilla Firefox\firefox.exe) on port 7055; process output follows:
thod startup on commonfix@mozillaonline.com version 0.9
1421571095765 addons.xpi DEBUG Registering manifest for C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095765 addons.xpi DEBUG Loading bootstrap scope from C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095767 addons.xpi DEBUG Calling bootstrap method startup on wx-assistant@mozillaonline.com version 1.1.2
1421571095785 addons.manager DEBUG Registering shutdown blocker for XPIProvider
1421571095785 addons.manager DEBUG Registering shutdown blocker for LightweightThemeManager
1421571095786 addons.manager DEBUG Registering shutdown blocker for OpenH264Provider
1421571095786 addons.manager DEBUG Registering shutdown blocker for PluginProvider
JavaScript error: file:///C:/Users/机器名/AppData/Local/Temp/anonymous2976645405089665816webdriver-profile/extensions/cpmanager@mozillaonline.com/components/mozCNGuard.js, line 287: TypeError: w.gBrowser is undefined
JavaScript warning: resource://addoninstaller/log4moz.js, line 494: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
1421571096533 addons.manager DEBUG Registering shutdown blocker for <unnamed-provider>
1421571096773 addons.xpi-utils DEBUG Starting async load of XPI database C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions.json
*** Blocklist::_loadBlocklistFromFile: blocklist is disabled
1421571097073 addons.xpi-utils DEBUG Async JSON file read took 0 MS
1421571097073 addons.xpi-utils DEBUG Finished async read of XPI database, parsing...
1421571097074 addons.xpi-utils DEBUG Successfully read XPI database
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
A coding exception was thrown in a Promise resolution callback.
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise Full message: TypeError: redeclaration of variable settings
Full stack: @resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 1421571097193 addons.repository DEBUG No addons.json found.
1421571097194 DeferredSave.addons.json DEBUG Save changes
1421571097195 DeferredSave.addons.json DEBUG Starting timer
1421571097250 DeferredSave.addons.json DEBUG Starting write
1421571097253 DeferredSave.addons.json DEBUG Write succeeded Build info: version: '2.42.2', revision: '6a6995d', time: '2014-06-03 17:42:03'
System info: host: '机器名-PC', ip: '10.24.68.138', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0'
Driver info: driver.version: FirefoxDriver
at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:130)
at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:246)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:114)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:193)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:186)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:182)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:95)
at main.java.aaron.sele.demo.StartBrowerFirefox.FirefoxStart(StartBrowerFirefox.java:39)
at main.java.aaron.sele.demo.StartBrowerFirefox.main(StartBrowerFirefox.java:54)
Caused by: org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox console output:
thod startup on commonfix@mozillaonline.com version 0.9
1421571095765 addons.xpi DEBUG Registering manifest for C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095765 addons.xpi DEBUG Loading bootstrap scope from C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions\wx-assistant@mozillaonline.com.xpi
1421571095767 addons.xpi DEBUG Calling bootstrap method startup on wx-assistant@mozillaonline.com version 1.1.2
1421571095785 addons.manager DEBUG Registering shutdown blocker for XPIProvider
1421571095785 addons.manager DEBUG Registering shutdown blocker for LightweightThemeManager
1421571095786 addons.manager DEBUG Registering shutdown blocker for OpenH264Provider
1421571095786 addons.manager DEBUG Registering shutdown blocker for PluginProvider
JavaScript error: file:///C:/Users/机器名/AppData/Local/Temp/anonymous2976645405089665816webdriver-profile/extensions/cpmanager@mozillaonline.com/components/mozCNGuard.js, line 287: TypeError: w.gBrowser is undefined
JavaScript warning: resource://addoninstaller/log4moz.js, line 494: mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
1421571096533 addons.manager DEBUG Registering shutdown blocker for <unnamed-provider>
1421571096773 addons.xpi-utils DEBUG Starting async load of XPI database C:\Users\机器名\AppData\Local\Temp\anonymous2976645405089665816webdriver-profile\extensions.json
*** Blocklist::_loadBlocklistFromFile: blocklist is disabled
1421571097073 addons.xpi-utils DEBUG Async JSON file read took 0 MS
1421571097073 addons.xpi-utils DEBUG Finished async read of XPI database, parsing...
1421571097074 addons.xpi-utils DEBUG Successfully read XPI database
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
A coding exception was thrown in a Promise resolution callback.
See https://developer.mozilla.org/Mozilla/JavaScript_code_modules/Promise.jsm/Promise Full message: TypeError: redeclaration of variable settings
Full stack: @resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 *************************
console.error: commonfix:
Message: TypeError: redeclaration of variable settings
Stack:
@resource://commonfix-at-mozillaonline-dot-com/commonfix/lib/main.js:231:undefined
CuddlefishLoader/options<.load@resource://gre/modules/commonjs/sdk/loader/cuddlefish.js:129:18
run@resource://gre/modules/commonjs/sdk/addon/runner.js:145:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:86:7
Handler.prototype.process@resource://gre/modules/Promise-backend.js:865:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:744:7 1421571097193 addons.repository DEBUG No addons.json found.
1421571097194 DeferredSave.addons.json DEBUG Save changes
1421571097195 DeferredSave.addons.json DEBUG Starting timer
1421571097250 DeferredSave.addons.json DEBUG Starting write
1421571097253 DeferredSave.addons.json DEBUG Write succeeded at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:118)
... 8 more

从信息中可看出,Selenium 无法启动 Friefox 浏览器而导致程序报错信息。解决步骤:

  • 初始以为是因为 WebDriver 驱动的问题,更换后发现问题依然存在
  • 查看其 Firefox 的版本为 35,觉得问题出在了 Firefox 版本与 selenium-server-standalone 版本不对应导致的,于是将 Firefox 版本降至 31,脚本运行通过;
  • 将 Firefox 版本升级为 35,下载最新的 selenium-server-standalone-2.44.0.jar(下载地址:http://yunpan.cn/cyaZTHGtiav9Y  提取码 96a6) 导入工程,脚本运行通过

至此,WebUI 自动化功能测试脚本第 004 篇-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary 顺利完结,希望此文能够给初学 Selenium 的您一份参考。

最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^

Selenium2学习-007-WebUI自动化实战实例-005-解决 Firefox 版本不兼容:org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary的更多相关文章

  1. Selenium2学习-037-WebUI自动化实战实例-IE浏览器显示比例问题:org.openqa.selenium.remote.SessionNotFoundException: Unexpected error launching Internet Explorer. Browser zoom level was set to 94%. It should be set to 100%

    好久没有写博文了,今天在给部门新人演示 Selenium WebDriver 启动其支持的各种浏览器时,启动 IE 时总是无法打开对应的百度网址,页面如下所示:

  2. Selenium2学习-001-Selenium2 WebUI自动化Java开发 Windows 环境配置

    此文主要介绍 Selenium2 WebUI自动化Java开发 Windows 环境配置,供各位亲们参考,若有不足之处,敬请各位大神指正,非常感谢! 所需软件列表如下所示: 所属分类 具体名称 备注 ...

  3. Selenium2学习-035-WebUI自动化实战实例-033-页面快照截图应用之三 -- 区域截图(专业版)

    之前有写过两篇博文讲述了 WebUI 自动化测试脚本中常用的截图方法,敬请参阅如下所示链接: 浏览器显示区域截图 浏览器指定区域截图 那么当需要截取的区域不在浏览器显示窗口范围之内时,之前的方法显然无 ...

  4. Selenium2学习-027-WebUI自动化实战实例-025-JavaScript 在 Selenium 自动化中的应用实例之三(页面滚屏,模拟鼠标拖动滚动条)

    日常的 Web UI 自动化测试过程中,get 或 navigate 到指定的页面后,若想截图的元素或者指定区域范围不在浏览器的显示区域内,则通过截屏则无法获取相应的信息,反而浪费了无畏的图片服务器资 ...

  5. Selenium2学习-039-WebUI自动化实战实例-文件上传下载

    通常在 WebUI 自动化测试过程中必然会涉及到文件上传的自动化测试需求,而开发在进行相应的技术实现是不同的,粗略可划分为两类:input标签类(类型为file)和非input标签类(例如:div.a ...

  6. Selenium2学习-018-WebUI自动化实战实例-016-自动化脚本编写过程中的登录验证码问题

    日常的 Web 网站开发的过程中,为提升登录安全或防止用户通过脚本进行黄牛操作(宇宙最贵铁皮天朝魔都的机动车牌照竞拍中),很多网站在登录的时候,添加了验证码验证,而且验证码的实现越来越复杂,对其进行脚 ...

  7. Selenium2学习-016-WebUI自动化实战实例-014-Selenium 窗口选择

    在日常的 WebUI 自动化测试脚本编写过程中,经常需要打开新的页面,或者在多个打开的页面之间进行切换,以对页面元素进行相应的操作,以模拟用户的行为,实现 UI 的自动化测试.在过往的时间中,经常有初 ...

  8. Selenium2学习-014-WebUI自动化实战实例-012-Selenium 操作下拉列表实例-div+{js|jquery}

    之前已经讲过了 Selenium 操作 Select 实现的下拉列表:Selenium2学习-010-WebUI自动化实战实例-008-Selenium 操作下拉列表实例-Select,但是在实际的日 ...

  9. Selenium2学习-010-WebUI自动化实战实例-008-Selenium 操作下拉列表实例-Select

    此文主要讲述用 Java 编写 Selenium 自动化测试脚本编写过程中,对下拉列表框 Select 的操作. 下拉列表是 Web UI 自动化测试过程中使用率非常高的,通常有两种形式的下拉列表,一 ...

随机推荐

  1. python 中chr(),unichr(),ord()的用法

    chr()根据整数返回对应的字符,也就是讲ascii转换为字符 unichr()将整数返回成unicode字符 ord()将字符转换成ascii码

  2. Codeforces Round #192 (Div. 2) B. Road Construction

    #include <iostream> #include <vector> using namespace std; int main(){ int n,m; cin > ...

  3. 【BZOJ】1191: [HNOI2006]超级英雄Hero(二分图匹配)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1191 一眼题,笑嘻嘻地写了匈牙利,提交..WA了?不科学!!!!!数组小了??不思考了,改大提交,. ...

  4. SQL Server DATEPART() 函数

    定义和用法 DATEPART() 函数用于返回日期/时间的单独部分,比如年.月.日.小时.分钟等等. 语法 DATEPART(datepart,date) date 参数是合法的日期表达式.datep ...

  5. FileStorage Read String Start With Number Need Quotation Mark 读取数字开头的字符串需要加引号

    // Write data FileStorage fs("test.yml", FileStorage::WRITE); fs << "MyString&q ...

  6. HDU 1069 基础动态规划+排序

    题意 给出n种立方体石头 当且仅当一块石头的底部宽度长度都小于一块石头的时候才能放在上面 问最高能放多高?石头不限数目 然而同样一种石头采用同样的摆放方式 两快相同石头一定无法进行放置 所以 一块石头 ...

  7. twitter storm源码走读之6 -- Trident Topology执行过程分析

    欢迎转载,转载请注明出处,徽沪一郎. TridentTopology是storm提供的高层使用接口,常见的一些SQL中的操作在tridenttopology提供的api中都有类似的影射.关于Tride ...

  8. Web 在线文件管理器学习笔记与总结(15)剪切文件夹 (16)删除文件夹

    (15)剪切文件夹 ① 通过rename($oldname,$newname) 函数实现剪切文件夹的操作 ② 需要检测目标文件夹是否存在,如果存在还要检测目标目录中是否存在同名文件夹,如果不存在则剪切 ...

  9. 使用 Intel GPA 与 分析3D程序和抓取模型

    原文链接在这里 http://dev.cra0kalo.com/?p=213 背景信息 Intel的GPA本身是一款图形分析软件,并没有设计从3D程序里抓取模型资源的功能,但这里作者是通过hook G ...

  10. 1、C到C++安全性增强

    1.C语言 #include <stdio.h> int main(void) { const int a = 10; //在C语言里这里不赋值可以编译的过去,但是这里不初始化以后就没办法 ...