小编Vis*_*ady的帖子

用于显式等待的Selenium Java Lambda实现

我正在尝试为selenium webdriver等实现Java Lambda概念.我需要转换自定义webdriver等待这样的事情

  (new WebDriverWait(driver(), 5))
            .until(new ExpectedCondition<WebElement>() {
                public WebElement apply(WebDriver d) {
                    return d.findElement(By.linkText(""));
                }
            });
Run Code Online (Sandbox Code Playgroud)

 (new WebDriverWait(driver(), 5)).until((driver) -> driver.findElement(By.linkText("")));
Run Code Online (Sandbox Code Playgroud)

但它与'until'引用的函数接口不匹配并抛出错误.

所以我尝试传递Lambda,因为它支持.

Attempt1

Predicate<WebDriver> isVisible = (dr) -> dr.findElement(
     By.linkText("")).isDisplayed();
     webDriverWait.until(isVisible);
Run Code Online (Sandbox Code Playgroud)

它有点工作,但不是我需要的,因为它只返回空白.

需要你的帮助或建议.

java lambda selenium-webdriver

7
推荐指数
1
解决办法
4635
查看次数

标签 统计

java ×1

lambda ×1

selenium-webdriver ×1