关闭selenium网格实例

时间:2013-04-22 13:22:24

标签: selenium selenium-grid

似乎缺乏关于此的文档(或者至少我找不到它)。我想最终在Jenkins上运行一系列Selenium测试并使用Selenium Grid2。当我编写测试时,我想知道如何告诉集线器我已经完成了我正在使用的WebDriver实例。我应该致电webDriver.close()还是webDriver.quit()?当我要求RemoteWebDriver并且没有可用时会发生什么,我可以设置超时期限吗?

或者任何人都可以向我指点一些关于此的文档/博客,我发现的一切都告诉你如何让东西运行起来然后停在那里?

1 个答案:

答案 0 :(得分:3)

使用webDriver.quit()正常关闭浏览器实例(会话)。 webDriver.stop()可能会导致异常(我根据自己的经验告诉你,虽然你也可以找到很多关于它的讨论here)。

您可以参考thisthis作为参考。小心区分 Selenium Grid 1 Selenium Grid 2

为了更好地了解它是如何工作的,有助于查看WebDriver's code

如果您要求RemoteWebDriver(为所请求的环境配置)并且没有可用,则集线器将保留请求,直到获得空闲。如果集线器没有“知道”任何具有所请求环境的节点,您将得到如下内容:

Caused by: org.openqa.selenium.WebDriverException: Error forwarding the new session cannot find : {platform=WINDOWS, javascriptEnabled=true, browserName=chrome, version=25.0.1312.56}

测试将不会执行并且将失败。

至于超时配置,this可能会有所帮助。