捕获硒中的超时异常

时间:2015-01-07 20:18:57

标签: c# selenium selenium-webdriver

所以我在c#winforms中使用PhantomJS webdriver。

与firefox不同,即使网页没有完全加载,PhantomJS也会在代码中占用,所以为了确保它在完全加载时运行,你必须检查元素并检查页面是否已完全加载。

IWait<IWebDriver> wait = new OpenQA.Selenium.Support.UI.WebDriverWait(driver, TimeSpan.FromSeconds(30.00));
try
 {
     wait.Until(driver1 => IsElementPresent(By.XPath("//*[@class='single_like_button btn3-wrap']")));
 }
 catch (TimeoutException) 
 {
      driver.Url = "http://addmefast.com/free_points/facebook_post_like";
 }

我得到的错误

An unhandled exception of type 'OpenQA.Selenium.WebDriverTimeoutException' occurred in  WebDriver.Support.dll

Additional information: Timed out after 30 seconds 

显然,try和catch方法不能以任何其他方式工作吗?

1 个答案:

答案 0 :(得分:1)

尝试捕捉WebDriverTimeoutException,而不仅仅是TimeoutException