我正面临一个关于弹出窗口的问题(不是浏览器弹出窗口和应用程序弹出窗口),我正在完美地处理它。但问题是我不知道它何时出现,默认情况下我使用Thread.sleep 20秒才能处理它。现在我必须减少时间并且必须有效地处理这个问题。任何人都可以帮助我而不使用Thread.sleep。
的Thread.sleep(20000);
if(oASelFW.driver.findElement(By.xpath("//div[@class='fsrFloatingMid']")).isDisplayed()){
oASelFW.driver.findElement(By.xpath("//a[@class='fsrCloseBtn']")).click();
}
答案 0 :(得分:0)
你需要使用Explicit waits,这将允许等到某个条件满足 - 在你的情况下,直到元素存在。
WebElement whatever = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(
By.xpath("//div[@class='fsrFloatingMid']"));