Java 如何向函数发送预期条件?
我想编写一个获取Java 如何向函数发送预期条件?,java,selenium,Java,Selenium,我想编写一个获取ExpectedConditions和Locator的通用函数: public WebElement findElementElements(ExpectedConditions expectedConditions, By locator){ WebDriver driver... WebDriverWait webDriverWait... return driver.webDriverWait().until(expectedConditions(
ExpectedConditions
和Locator
的通用函数:
public WebElement findElementElements(ExpectedConditions expectedConditions, By locator){
WebDriver driver...
WebDriverWait webDriverWait...
return driver.webDriverWait().until(expectedConditions(locator));
}
但是我得到了这个编译器错误:“预期的方法调用”不是所有的
expectedconditions
都返回相同的类型。。。一些返回WebElement
,其他返回Boolean
。此方法需要ExpectedConditions
返回WebElement
s
public WebElement findElement(Function<WebDriver, WebElement> expectedCondition) {
return new WebDriverWait(driver, 10).until(expectedCondition);
}
注意:您不需要
locator
参数,因为这是ExpectedCondition
的必需部分,您打算expectedConditions(locator)
做什么?您没有指定要调用哪个方法。另外,至少要显示真实的完整代码和完整的错误消息。在没有看到实际代码的情况下,很难调试您的问题或猜测您打算做什么。@JoachimSauer我猜他是在询问将接收expectedConditions
和locator
参数并返回传递的locator
定位的元素并满足所需条件的通用方法预期条件
如可见性、可点击性等条件。
WebElement e = findElement(ExpectedConditions.elementToBeClickable(By.id("myId")));