Selenium WebDriver自动引发TimeoutException - C#

时间:2012-10-31 16:38:29

标签: c# selenium automation webdriver selenium-webdriver

我们目前正在将自动化脚本从Selenium RC迁移到WebDriver。我遇到了WebDriver的一些问题,主要是处理正在测试的网页中的某些内容被更改时抛出的TimeoutExceptions。

例如,我当前正在登录页面,然后单击提交按钮,该按钮会重定向到新页面。调用click()方法的瞬间抛出异常。但是,如果我专注于密码字段并使用SendKeys(Keys.Enter),重定向将毫无问题地工作。

还有其他人遇到过这个吗?由于在调用click方法时抛出异常,因此我无法在之后直接设置任何等待或超时时间。我知道我可以吞下TimeoutException,但肯定有更好的解决方案。

我正在使用Firefox驱动程序。我猜这个问题与页面的来源被改变有关。

以下是例外:

TimeoutException

这是点击方法:

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

1 个答案:

答案 0 :(得分:0)

我在登录页面后放入一个sleep语句,然后检查页面错误,这解决了问题,偶尔也会抛出InvalidOperationException。