2013-04-22 97 views
1

似乎缺乏這方面的文檔(或者至少我找不到它)。我想最終在Jenkins上運行Selenium測試並使用Selenium Grid2。當我正在寫測試時,我想知道如何告訴集線器,我已經完成了我正在使用的WebDriver實例。我應該撥打webDriver.close()webDriver.quit()嗎?當我詢問RemoteWebDriver時會發生什麼,但沒有可用的時間,是否可以設置超時時間?關閉硒網格實例

或任何人可以點我一些有關此文檔/博客,一切我發現告訴你如何得到的東西和運行,但停在那裏?

回答

3

使用webDriver.quit()關閉瀏覽器實例(會話)優雅。 webDriver.stop()很可能會導致異常(我從我自己的經驗告訴你,雖然你也可以找到關於它的很多討論here)。

你可以看到參考thisthis。小心硒電網和硒電網之間 區分。

爲了更好地理解它是如何工作的,它有助於有看看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可能的幫助。