1

我正在使用webdriver来测试一个站点。事件委托正在多个链接中使用,以通过 ajax 加载数据:

     jQuery("body").delegate("a",
                             "click",
                             function adjustHref(event) {
                                // callback
                             });

在测试中,我然后单击带有 webdriver 的链接:

     WebElement anchor = headlines.get(0).findElement(By.tagName("a"));
     anchor.click();
     WebElement articleHeader = wait.until(new VisibilityOfElementLocated(By.tagName("h1")));

现在这将在 Chrome 和 IE 中按预期工作,但在 Firefox 中有时会失败。而在其他浏览器中anchor.click()会导航到一个新页面,但在 Firefox 中它有时会工作,有时会失败。没有抛出异常,因此已找到元素锚点,但 webdriver 单击它没有任何反应。这只是 webdriver 的问题,手动使用该站点可以正常工作。webdriver 对 firefox 中的事件委托有任何限制吗?

4

1 回答 1

0

我发现问题是我的链接文本换成了两行并且anchor.click点击了错误的位置。通过使浏览器变大,文本不会换行并且点击位置正确。

于 2010-07-19T08:48:15.663 回答