2012-10-31 57 views
1

我們正在將我們的自動化腳本從Selenium RC遷移到WebDriver。我遇到了WebDriver的一些問題,主要是處理正在被測試的網頁中的某些東西被拋出的TimeoutExceptions被更改。Selenium WebDriver自動拋出TimeoutException - C#

例如,我正在登錄一個頁面,然後單擊一個提交按鈕,它將重定向到一個新頁面。即時調用click()方法引發異常。但是,如果我保持專注於密碼字段並使用SendKeys(Keys.Enter),重定向的工作沒有任何問題。

有沒有人遇到過這個?由於在調用click方法時引發異常,因此我無法在後面直接設置任何等待或超時期限。我知道我可以吞下TimeoutException,但肯定必須有更好的解決方案。

我正在使用Firefox驅動程序。我猜這個問題與這些網頁的來源正在發生變化有關。

這裏是個例外:

TimeoutException

這裏是click方法:

public void ClickByName(string name) 
{ 
    _driver.FindElement(By.Name(name)).Click(); 
} 
+0

我用Selenium和FireFox驅動程序很多地方工作,而這從來沒有發生過。也許這是導致它的其他事情。這不是重定向本身。頁面如何重定向? – gillyb

+0

您是否嘗試過使用顯式和隱式等待? http://seleniumhq.org/docs/04_webdriver_advanced.html –

+0

@gillyb我想知道是否是我的FirefoxProfile實例或我使用的Firefox版本。 – Andrew

回答

0

我把睡眠聲明登錄到頁面後,檢查頁面錯誤而在此之前解決了問題,以及偶爾拋出InvalidOperationExceptions。

相關問題