我想知道如何用lambda替换流行的WebDriverWait.
它用于显式等待某些事件.
程式码片段:
(new WebDriverWait(Driver.driver.get(), 10)).until(new ExpectedCondition() {
public Boolean apply(WebDriver d) {
return d.findElement(By.id("DataTables_Table_0_processing")).isDisplayed();
}
});
要么:
(new WebDriverWait(Driver.driver.get(), 10))
.until(ExpectedConditions
.invisibilityOfElementLocated(By.id("DataTables_Table_0_processing")));
如何用lambda表达式替换它?
解决方法:
(new WebDriverWait(Driver.driver.get(), 10))
.until(d -> d.findElement(By.id("DataTables_Table_0_processing")).isDisplayed());
我认为用lambda不会改善第二种情况,因为已经有一种方便的方法可以提供足够的清晰度.
标签:java-8,selenium-webdriver,java,lambda
来源: https://codeday.me/bug/20191119/2037962.html