线程" main"中的例外情况org.openqa.selenium.remote.UnreachableBrowserException:与远程浏览器通信时出错。它可能已经死了

时间:2015-10-09 00:41:39

标签: selenium-webdriver

我试图执行这个Selenium脚本,

public class FirePath_Ex {

    public static void main(String[] args) 
    {// TODO Auto-generated method stub
        WebDriver d=new FirefoxDriver();
        d.get("https://facebook.com");
        d.findElement(By.xpath(".//*[@id='email']")).sendKeys("dhhfdssd");
        d.findElement(By.id("pass")).sendKeys("sjfsdfj");
    }
}

关闭FireFox后显示以下错误,

  

线程中的异常" main"   org.openqa.selenium.remote.UnreachableBrowserException:错误   与远程浏览器通信。它可能已经死了。       构建信息:版本:' 2.47.1',修订版:' 411b314',时间:' 2015-07-30 02:56:46'       系统信息:主机:' Admin-PC',ip:' 192.168.0.101',os.name:' Windows 7',os.arch:&# 39; x86',os.version:' 6.1',java.version:   ' 1.7.0-EA'       驱动程序信息:driver.version:RemoteWebDriver         在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:589)         在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:348)         在org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:445)         在org.openqa.selenium.By $ ByXPath.findElement(By.java:358)         在org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:340)         在FirePath_Ex.main(FirePath_Ex.java:13)       引起:org.apache.http.conn.HttpHostConnectException:连接到127.0.0.1:7055 [/127.0.0.1]失败:连接被拒绝:连接

如何解决此问题?

3 个答案:

答案 0 :(得分:0)

尝试添加以下代码,并用您的绝对路径替换firefox exe的路径: -

System.setProperty("webdriver.firefox.bin", "C:\\firefox.exe");

所以你的代码应该是: -

公共类FirePath_Ex {

public static void main(String[] args) 
{// TODO Auto-generated method stub
    System.setProperty("webdriver.firefox.bin", "C:\\firefox.exe");
    WebDriver d=new FirefoxDriver();
    d.get("https://facebook.com");
    d.findElement(By.xpath(".//*[@id='email']")).sendKeys("dhhfdssd");
    d.findElement(By.id("pass")).sendKeys("sjfsdfj");
}
}

希望它会对你有所帮助:)。

答案 1 :(得分:0)

这让我疯狂了很多。

对我而言,只需重新实例化它就可以在某些时候解决问题。 (如下)。然而,95%的时间是因为我的硒版本与firefox版本不兼容。支持版本的文档不易解析,也不包含详尽的列表。有时需要一些跟踪和错误。

public FirefoxWebPageReader firefoxWebPageReader() {
    return forceInit(3);
}

private FirefoxWebPageReader forceInit(final int tries) {
    if (tries == 0) {
        throw new RuntimeException("Can not initialize Firefox reader");
    }
    try {
        final String binaryPath = environment.getProperty("crawler.firefox.path");
        return new FirefoxWebPageReader(binaryPath);

    } catch (WebDriverException e) {
        LOGGER.error("Error occurred when building FirefoxWebPageReader, tries left: " + (tries - 1), e);
        return forceInit(tries - 1);
    }
}

答案 2 :(得分:0)

可能的原因可能是浏览器和chromedriver之间不兼容,因此安装更新的chromedriver或更新chrome可能会有所帮助