一、强制等待固定秒数
1 try { 2 Thread.sleep(1000); 3 } catch (InterruptedException e) { 4 e.printStackTrace(); 5 }
执行到sleep()方法时,系统固定休眠几秒,单位是ms--毫秒,调试代码的时候经常用到
二、隐式等待
1 driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
隐式等待:
1、比较灵活的一种等待方法,查找到页面元素就往下进行,查询不到就等待,超过指定时间就抛异常
2、隐式等待 作用域是全局的,即对页面所有的元素都设置了等待时间;直到driver实例被关闭,等待才失效
三、显式等待
1 WebDriverWait wait =new WebDriverWait(driver, 10); 2 wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.linkText("OK"))); 3 driver.findElement(By.linkText("OK")).click();
ExpectedConditions 常用的方法详情见此篇文章:
点击查看
显式等待:
1、显式等待 针对页面某一个元素设置等待时间
2、如果在规定的时间内找到了元素则执行相关操作,如果超过设置时间检测不到则抛出异常
做自动化操作时长常用的等待方式就是显式等待