2012-02-27 92 views
1

有什麼方法可以顯式設置超時值。我用以下,但它似乎並不奏效:Selenium WebDriver在頁面沒有響應時掛起

IWebDriver driver = new FirefoxDriver(profile); 
driver.Manage().Timeouts().ImplicitlyWait(new TimeSpan(0, 0, 30)); 

如果我可以創建一個新的標籤,並關閉當前頁面,和/或發生異常時停止網頁加載,即將是一個充分的解決方法。

謝謝。

回答

1

WebDriver支持項目中提供了一個助手類。使用,您可以等到你傳遞給「直到」法的條件得到滿足,或者它指定了之後的時間段(在此例如,3秒後)

IWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(3)) 
IWebElement element = wait.Until(driver => driver.FindElement(By.Name("q"))); 

使用以下命令安裝通過的NuGet支持項目

Install-Package Selenium.Support 
0

我有一個運行我的硒測試的WPF(WinForms)應用程序。當我需要睡眠時,我只需調用Thread.Sleep(someInteger)。你嘗試過嗎?

+0

感謝您的建議,但它不適合我。 – stats101 2012-02-28 00:35:26