1.selenium的显示等待
原理:显式等待,是明确的要等到某个元素的出现或者是某个元素的可点击等条件,等不到,一直等,除非在规定的时间之内都没找到,那么跳出Exception.(简而言之:是直到元素出现才去操作,如果超时则报异常)
new WebDriverWait(driver, timeout)).until(ExpectedConditions.presenceOfElementLocated(by);
2.selenium的隐式等待
原理:隐式等待,是在创建driver时,为浏览器对象设置一个等待时间。这个方法是得不到某个元素等待一段时间,直到拿到某个元素位置。
注意:在使用隐式等待的时候,实际上浏览器会在你自己设定的时间内不断的刷新页面去寻找我们需要的元素
river.manage().timeouts().implicitlyWait(second, TimeUnit.SECONDS)
3.笨方法等待
使当前线程进入等待,Thread.sleep();这种等待属于死等,很容易让线程挂掉,使程序抛异常,所以我们要慎用此方法。