赞
踩
1.显式等待
显式等待,就是明确的要等到某个元素的出现或者是某个元素的可点击等条件,等不到,就一直等,除非在规定的时间之内都没找到,那么就跳出Exception.
/*** 设置元素等待时间* * @param driver* @param by* @param timeOut //等待时间,以秒为单位* */
public static void waitForLoad(WebDriver driver, final By locator, int timeOut) {
WebDriverWait wait = new WebDriverWait(driver, timeOut); // timeOut为等待时间,单位秒
wait.until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
boolean loadcomplete = d.findElement(locator).isDisplayed();
return loadcomplete;}});}
2.隐式等待
driver.manage().timeouts().implicitlyWait(second, TimeUnit.SECONDS); //second为等待时间,单位秒
设置driver内findElement等方法的超时时间,该设置为全局设置,使用起来比较方便。
隐式等待, 此处的隐式等待是针对Driver 每次执行命令的 最长执行时间也可以理解为超时时间, 一些人对此处有误解,认为是让Driver等一段时间, 确实某些时候能让Driver等一段时间, 但是影响是全局的,每次Driver执行 找不到元素都会等待此处设置的时间, 假设某处将此值设置的
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。