自动化测试---等待
Posted 彩屏黑白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动化测试---等待相关的知识,希望对你有一定的参考价值。
1. 显示等待——WebDriverWait()
:等到某个条件成立时继续执行。每隔一段时间检测,超出最大时间则抛出异常
//FluentWait Wait<WebDriver> wait = new FluentWait<WebDriver>(driver) .withTimeout(60, TimeUnit.SECONDS) .pollingEvery(2, TimeUnit.SECONDS) .ignoring(NoSuchElementException.class); WebElement ele1 = wait.until(new Function<WebDriver, WebElement>() { public WebElement apply(WebDriver driver) { return driver.findElement(By.id("xxxxxxx")); } });
2. 隐式等待——implicitly_wait()
隐式等待中的时间并非一个固定的等待时间,它并不影响脚本的执行速度。比如进行某元素的定位时,如果元素可以定位就继续执行,如果目前定位不到就以轮询的方式持续判断该元素是否被定位到,如果超过规定的时间还没定位到就抛出异常
driver.manage().timeouts().implicitlyWait(20, TimeUnit.SECONDS);
3. 强制等待——sleep()
Thread.sleep(2000);
以上是关于自动化测试---等待的主要内容,如果未能解决你的问题,请参考以下文章
JUC并发编程 共享模式之工具 JUC CountdownLatch(倒计时锁) -- CountdownLatch应用(等待多个线程准备完毕( 可以覆盖上次的打印内)等待多个远程调用结束)(代码片段