在硒中,这是可以接受的,以验证页面中存在的元素

时间:2016-11-30 07:28:41

标签: selenium-webdriver

我是selenium的新手。在我的测试脚本中有一个页面,其中有许多文本字段下拉按钮。

我必须验证所有字段是否存在于页面中或否。 我这样做:

if(webElement.isDisplayed()){ 
   Reporter.log("abc displayed ");      
} else {                
   Reporter.log("abc failed to display");
   Assert.fail();
}

2 个答案:

答案 0 :(得分:0)

不,webElement.isDisplayed()判断元素是否显示,如果你想验证它是否存在,请使用:

public WebElement untilAdded(By by) {
        return new FluentWait<SearchContext>(context)
                .withTimeout(timeout, timeUnit)
                .pollingEvery(interval, TimeUnit.MILLISECONDS)
                .ignoring(NoSuchElementException.class)
                .until(new Function<SearchContext, WebElement>() {
                    public WebElement apply(SearchContext context) {
                        return context.findElement(by);
                    }
                });
    }

答案 1 :(得分:0)

使用WebDriverWait等待Element的出现。

(new WebDriverWait(driver, 30)).until(ExpectedConditions.presenceOfElementLocated(By by));

其他ExpectedConditions阅读API中的ExpectedConditions部分