1

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

例如,我目前正在登录一个页面,然后单击一个提交按钮,该按钮重定向到一个新页面。调用 click() 方法的那一刻,就会引发异常。但是,如果我专注于密码字段并使用 SendKeys(Keys.Enter) 重定向工作没有任何问题。

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

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

这是一个例外:

超时异常

点击方法如下:

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

1 回答 1

0

在登录页面后,我在检查页面错误之前放置了一个睡眠语句,这解决了问题,以及偶尔抛出的 InvalidOperationExceptions。

于 2012-11-02T20:15:02.557 回答