达到设置超时前的FluentWait超时

时间:2017-01-04 22:39:12

标签: java selenium

我试图在两个不同的元素之后实现两个流畅的等待,着陆时间因服务器需求而异。删除第二个流畅的等待foo2使代码按预期工作。但是当在1秒之后第一次添加第二次时,元素不可见异常抛出。

Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
        .withTimeout(90, TimeUnit.SECONDS)
        .pollingEvery(5, TimeUnit.SECONDS)
        .ignoring(NoSuchElementException.class);

WebElement foo = wait.until(new Function<WebDriver, WebElement>() {
    public WebElement apply(WebDriver driver) {
        return driver.findElement(By.xpath("//a[@href='/userdb']"));
    }
});

foo.click();

WebElement foo2 = wait.until(new Function<WebDriver, WebElement>() {
    public WebElement apply(WebDriver driver) {
        return driver.findElement(By.xpath("//a[@href='/itemdb']"));
    }
});

foo2.click();

0 个答案:

没有答案