Selenium Grid超时配置

时间:2014-01-27 18:47:12

标签: selenium selenium-grid2

我正在使用Selenium Grid 2。

我有一个集线器和6个节点。 我遇到的问题是由于意外的javascript弹出窗口导致测试失败,而selenium似乎没有清理这些会话。测试完成后,仍然有浏览器打开(每台测试机器上有多个),并且仍然有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();

1 个答案:

答案 0 :(得分:0)

我的观点来自Java,但如果做了两件事,我会对.Dispose()方法进行成像:

  1. 调用driver.quit()(不是driver.close())
  2. 然后,设置driver = null以标记垃圾收集
  3. 据我所知,在Selenium中没有自动清除浏览器的超时。您可以在驱动程序上设置3种不同的超时,但没有一种与您的要求相关。

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