java selenium sleep_【转】java-selenium三种等待方式

本文介绍了Java自动化测试中三种不同的等待方式:线程等待、隐式等待和显示等待。线程等待通过Thread.sleep()方法实现,适用于调试。隐式等待是全局设置,对页面元素加载设定等待时间。显示等待则更精确,等待指定元素出现。在实际自动化测试中,推荐使用显示等待以提高效率和准确性。
摘要由CSDN通过智能技术生成

方式1:

线程等待:Thread.sleep(xxxx)

只要在case中加入sleep就会强制等待设置的时间后才会执行之后的命令,这种等待一般适用于调试脚本的时候。

java代码:

//等待3秒

Thread.sleep(3000);

//完全退出浏览器

driver.quit();

方式2:

隐试等待:driver.manage().timeouts().implicitlyWait(xx, TimeUnit.SECONDS)

隐式等待,是设置的全局等待。设置等待时间,是对页面中的所有元素设置加载时间,如果元素不是马上就能定位成功就会在固定等待时长内不停去搜索元素,在设置时间内发现元素则执行后面操作,如果超出了设置的时间还没发现元素则抛出异常。隐式等待可以理解成在规定的时间范围内,浏览器在不停的刷新页面,直到找到相关元素或者时间结束。

java代码

System.setProperty("webdriver.chrome.driver", "E:\\chromedriver.exe");

driver=new ChromeDriver();

//隐试等待 10秒

driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

方式3:

显示等待: new WebDriverWait(driver, xx).until(ExpectedConditions.presenceOfElementLocated(By))

显示等待是等待指定元素设置的等待时间,在设置时间内,默认每隔0.5s检测一次当前的页面这个元素是否存在,如果在规定的时间内找到了元素则执行相关操作,如果超过设置时间检测不到则抛出异常。默认抛出异常为:NoSuchElementException。做自动化的时候推荐使用显示等待

java代码

WebElement wt=driver.findElement(By.xpath("//*[@class='wait']"));

wt.click();

//显示等待指定元素10秒

WebDriverWait wait=new WebDriverWait(driver,10);

wait.until(ExpectedConditions.presenceOfAllElementsLocatedBy(By.xpath("//*[@id='dp']/div")));

//定位元素

WebElement ds=driver.findElement(By.xpath("//*[@id='dp']/div"));

//获取文本内容

String text=ds.getText();

//校验文本内容

Assert.assertEquals(text,"延迟显示wait");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值