我通过硒webdriver使用appium遇到until
方法的问题。它抛出此错误
FluentWait类型的直到(Function)方法不适用于参数(新Function(){})
我遵循了prior posts中的所有选项,但没有一个起作用。
使用Java 1.8,几乎在POM文件中添加了每个依赖项。
public class AppInit {
public static void setUp(AndroidDriver<AndroidElement> adriver) throws InterruptedException, MalformedURLException {
...........
WebDriver driver;
final WebDriverWait wait = new WebDriverWait(driver, 5);
final By testXpath = By.xpath("////android.widget.Button[@content-desc='someid']");
wait.until(ExpectedConditions.visibilityOfElementLocated(testXpath)).click();
}
public static void clickMenu() {
WebDriver driver;
new WebDriverWait(driver, 60).until(new Function<WebDriver, Boolean>() {
Boolean isWindowFound = Boolean.FALSE;
public Boolean apply(WebDriver driver) {
try {
driver.switchTo().window("Your Window Name");
isWindowFound = Boolean.TRUE;
} catch (NoSuchWindowException e) {
System.out.println("Your Window Name not found");
System.out.println(driver.getTitle());
return isWindowFound;
}
return isWindowFound;
}
});
}
}
答案 0 :(得分:0)
添加以下依赖项已解决此问题
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.0</version>
</dependency>