selenium+Java中时间等待的几种方式
public class Demo14 {
public static void main(String[] args) {
FirefoxDriver driver = new FirefoxDriver();
driver.get("http://www.baidu.com/");
//显示等待,规定时间内,看元素出现没,如果元素没有出现,就一直等,除非规定时间还没有出现,则抛出异常
WebDriverWait wait = new WebDriverWait(driver,5);
wait.until(ExpectedConditions.presenceOfElementLocated(By.id("lg")));
/*
//隐式等待,看等待时间到了没,设置的时间为10秒,如果10秒之内,特定元素没有加载完成,则抛出异常,
//如果小于10秒之内特定元素加载完成,剩下的时间将不再等待。
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
*/
//固定等待2秒
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
driver.close();
}
}
下图是截取某个视频上的,将方法封装起来,使得使用更加灵活。封装的方法,在规定时间内找到元素,返回布尔类型为true;如果没有找到元素,抛出异常。