Java 等待该方法返回Selenium
我是硒的新手,我有这样的方法Java 等待该方法返回Selenium,java,selenium,Java,Selenium,我是硒的新手,我有这样的方法 public Test login(String username,String password) { accountName.sendKeys(username); passwordField.sendKeys(password); signInButton.click(); return PageFactory.initElements(driver,Test.class); } 登录可能需要一些时间才能完成。我希望我能等
public Test login(String username,String password)
{
accountName.sendKeys(username);
passwordField.sendKeys(password);
signInButton.click();
return PageFactory.initElements(driver,Test.class);
}
登录可能需要一些时间才能完成。我希望我能等到
login
方法返回后再调用其他方法。在selenium中有什么方法可以做到这一点吗?您有几个选项可以解决这个问题。我建议您添加一个流畅的等待:
Wait<WebDriver> wait = new FluentWait<WebDriver>(driver)
.withTimeout(30, SECONDS)
.pollingEvery(1, SECONDS)
.ignoring(NoSuchElementException.class);
WebElement foo = wait.until(new Function<WebDriver, WebElement>() {
public WebElement apply(WebDriver driver) {
return driver.findElement(By.id("foo"));
}
});
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);