我正在尝试将 Java 代码从 Selenium 1 (RC) 迁移到 Selenium 2 (WebDriver),看起来像这样:
1: selenium.click(someButton);
2: selenium.waitForPageToLoad();
3: if (!selenium.isElementPresent(errorMessageElement)) {
4: Assert.fail("Test failed! No error msg should be displayed on page.");
5: }
关键部分是第 3 行,我尝试根据Rostislav Matl的建议将其转换为 Selenium 2 :
3: if (!driver.findElements(By.xpath(errorMessageElement)).size() > 0) {
不幸的是,WebDriver 等待整个超时(在我的情况下为 60 秒)来检测该元素确实不存在。虽然这有效,但它引入了太多的时间开销......
Selenium 2 中是否有任何方法可以高效地检查当前在 Web 浏览器中显示的 HTML 页面上是否存在元素?