FirefoxDriver上的打开URL因WebDriverException而失败:无法解析“”

时间:2010-03-26 13:33:30

标签: java firefox selenium-webdriver webdriver selenium-firefoxdriver

我正在使用Selenium Webdriver进行一些机器人测试。由于某些功能似乎只适用于Firefox,我有义务使用Firefoxdriver。 偶尔会发生一些奇怪的事情。启动te驱动程序

driver = new FirefoxDriver();
driver.get(URL);

启动firefox但不转到指定的url。奇怪的是,它可以在Firefox中使用相同首选项的另一台计算机上运行。我通过更改到另一个版本的firefox来解决了这个问题,但这一次对我来说不起作用,但它确实对其他开发人员有用。是的,错误在同一天,同一天开始给所有开发人员...... 我的第一个问题是:它是firefox问题还是Webdriver问题。 第二个问题:它如何在其他电脑上工作?

非常感谢任何帮助 感谢

Error:

org.openqa.selenium.WebDriverException: Could not parse "".
System info: os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.6.0_18'
Driver info: driver.version: firefox
    at org.openqa.selenium.firefox.Response.<init>(Response.java:53)
    at org.openqa.selenium.firefox.internal.AbstractExtensionConnection.nextResponse(AbstractExtensionConnection.java:258)
    at org.openqa.selenium.firefox.internal.AbstractExtensionConnection.readLoop(AbstractExtensionConnection.java:220)
    at org.openqa.selenium.firefox.internal.AbstractExtensionConnection.waitForResponseFor(AbstractExtensionConnection.java:213)
    at org.openqa.selenium.firefox.internal.AbstractExtensionConnection.sendMessageAndWaitForResponse(AbstractExtensionConnection.java:162)
    at org.openqa.selenium.firefox.FirefoxDriver.executeCommand(FirefoxDriver.java:329)
    at org.openqa.selenium.firefox.FirefoxDriver.sendMessage(FirefoxDriver.java:312)
    at org.openqa.selenium.firefox.FirefoxDriver.sendMessage(FirefoxDriver.java:308)
    at org.openqa.selenium.firefox.FirefoxDriver.fixId(FirefoxDriver.java:350)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:130)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:109)
    at be.....MMCRobotTest.login(MMCRobotTest.java:98)
    at be.....MMCRobotTestAttribute.testNewAttribute(MMCRobotTestAttribute.java:12)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at junit.framework.TestCase.runTest(TestCase.java:164)
    at junit.framework.TestCase.runBare(TestCase.java:130)
    at junit.framework.TestResult$1.protect(TestResult.java:106)
    at junit.framework.TestResult.runProtected(TestResult.java:124)
    at junit.framework.TestResult.run(TestResult.java:109)
    at junit.framework.TestCase.run(TestCase.java:120)
    at junit.framework.TestSuite.runTest(TestSuite.java:230)
    at junit.framework.TestSuite.run(TestSuite.java:225)
    at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
Caused by: org.json.JSONException: A JSONObject text must begin with '{' at character 0
    at org.json.JSONTokener.syntaxError(JSONTokener.java:496)
    at org.json.JSONObject.<init>(JSONObject.java:180)
    at org.json.JSONObject.<init>(JSONObject.java:403)
    at org.openqa.selenium.firefox.Response.<init>(Response.java:41)
    ... 30 more

3 个答案:

答案 0 :(得分:1)

我建议您使用最新版本的Firefox浏览器和最新的selenium服务器库。 或者我认为您忘记在所有遇到问题的计算机上包含所有lib jar。

答案 1 :(得分:1)

确保网址的前缀是“http://”之类的正确协议。删除它会产生异常并添加它会阻止它。

答案 2 :(得分:0)

我认为您已经安装了多个版本的Firefox浏览器, 尝试卸载所有并安装最新版本... 希望这会有所帮助..