2014-01-27 51 views
2

我正在使用硒网格2.硒网格超时配置

我有一个集线器和6个节点。 我遇到的问题是由于意外的javascript弹出窗口而导致某些测试失败,而硒似乎没有清理这些会话。当测试完成时,浏览器仍然打开(每台测试机器上都有多个),并且仍然运行IEDriverServer.exe进程。

这是我使用的hub.json文件:

{ 
    "host": null, 
    "port": 4444, 
    "newSessionWaitTimeout": -1, 
    "servlets" : [], 
    "prioritizer": null, 
    "capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher", 
    "throwOnCapabilityNotPresent": true, 
    "nodePolling": 5000, 

    "cleanUpCycle": 5000, 
    "timeout": 300000, 
    "browserTimeout": 60000 
} 

任何额外的输入赞赏...

仅供参考,我有我的框架,它的最后一件事finally块它确实是

driver.Dispose(); 

回答

0

我的观点是从Java,但我会成像.Dispose()方法将工作,如果它做了两两件事:

  1. 调用driver.quit()(未driver.close())
  2. 然后,设置驱动器= NULL标记为垃圾收集

据我所知,没有超时来清理浏览器自动在Selenium中。有三种不同类型的超时可以在驱动程序上设置,但没有一种与您的要求有关。

作为旁注,我在我的“@AfterClass”注释中调用driver.quit()。然后,在我的每个类中,它将通过参数化数据运行多次,然后最终退出浏览器。在我的“@AfterTest”注释中,我会为最终的HTML报告做准备。

+0

在C#中,driver.Quit()实际上调用了driver.Dispose()。 我之前使用Quit,但在查找实际代码之前已更改为Dispose,并看到它正在做同样的事情。 – alphanumericone