RemoteWebDriver无法重新连接到HTTP套接字

时间:2015-03-11 11:13:58

标签: java selenium remotewebdriver

我正在使用selenium将HTTP请求发送到HTTP服务器,并且在关闭并通过相同的IP /端口(127.0.0.1:8080)从测试代码重新打开连接后,我收到以下错误。我很确定HTTP服务器应用程序在退出时关闭服务器套接字但是我不确定测试(客户端)代码是否正在关闭套接字。

我的RemoteWebDriver实现如下,我猜它可能需要覆盖stopClient()才能关闭套接字但是有什么?

public class MyWebDriver extends RemoteWebDriver {

public MyWebDriver(URL url, Capabilities desiredCapabilities) {
    super(new MyCommandExecutor(url), desiredCapabilities);
}

public Response sendCommand(String command){
    Map<String, Object> parameters = new HashMap<String, Object>();
    parameters.put("command", command);


    Response response = execute("sendCommand", parameters);

    return response;
}

}

  

org.openqa.selenium.remote.UnreachableBrowserException:不能   开始一个新的会议。可能的原因是遥控器的无效地址   服务器或浏览器启动失败。构建信息:版本:'2.44.0',   修订版:'76d78cf323ce037c5f92db6c1bba601c2ac43ad8',时间:   '2014-10-23 13:11:40'系统信息:主持人:'...',ip:'172.27.3.221',   os.name:'Mac OS X',os.arch:'x86_64',os.version:'10 .10.1',   java.version:'1.7.0_67'驱动程序信息:driver.version:MyWebDriver at   org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:593)     在

     

...

     

引起:org.apache.http.conn.HttpHostConnectException:连接到   127.0.0.1:8080 [/127.0.0.1]失败:拒绝连接

PS:我应该提一下,客户端代码可以在30秒左右之后重新连接到服务器 - 操作系统必须在那之后释放套接字:Java process on Mac OSX does not release socket

0 个答案:

没有答案