隐式等待:隐式等待针对的是一个全局的设置,设置隐式等待后,脚本中的所有页面元素操作都遵从这个类似全局性质的等待标准.但有时候页面元素加载完毕,不一定元素就能被点击,此时就需要显示等待来处理了.

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

显示等待:显示等待针对的是需要操作的单个元素,对单个元素生效.显示等待中有多种等待机制,可以等待元素出现直到被点击才算真正的等待完毕.

当页面加载很慢时,推荐使用显示等待:等到需要操作的那个元素加载成功之后就直接操作这个元素,不需要等待其他元素的加载

WebDriverWait wait = new WebDriverWait(driver, 10);

wait.until(ExpectedConditions.visibilityOfElementLocated(By.id("kw")));

显式等待 使用ExpectedConditions类中自带方法, 可以进行显试等待的判断。

显式等待可以自定义等待的条件,用于更加复杂的页面等待条件

(1)页面元素是否在页面上可用和可被单击:elementToBeClickable(By locator)

(2)页面元素处于被选中状态:elementToBeSelected(WebElement element)

(3)页面元素在页面中存在:presenceOfElementLocated(By locator)

(4)在页面元素中是否包含特定的文本:textToBePresentInElement(By locator)

(5)页面元素值:textToBePresentInElementValue(By locator, java.lang.String text)

(6)标题 (title):titleContains(java.lang.String title)

只有满足显式等待的条件满足,测试代码才会继续向后执行后续的测试逻辑

如果超过设定的最大显式等待时间阈值, 这测试程序会抛出异常。

WebDriverWait wait = new WebDriverWait(driver,5);

wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("")));

显示等待与隐式等待的用法相关推荐

  1. 【App自动化测试】(八)三种等待方式——强制等待、隐式等待、显示等待

    目录 1. 为什么要添加等待? 2. 三种等待方式 3. 强制(直接)等待 4. 隐式等待 4.1 隐式等待说明 4.2 隐式等待无法解决的问题 5. 显式等待 5.1 为什么要使用显示等待机制? 5 ...

  2. appium 等待的3中方式:强制等待、隐式等待、显示等待

    强制等待.隐式等待.显示等待 三者的特点 强制等待是sleep,强烈不推荐,设定的时间太固定,如果是模拟器等待3秒,真机可能只需要等待2秒 driver.implicitly.wat(timeout) ...

  3. Appium+PythonUI自动化之webdriver 的三种等待方式(强制等待、隐式等待、显示等待)

    在自动化测试脚本的运行过程中,webdriver操作浏览器的时候,对于元素的定位是有一定的超时时间,大致应该在1-3秒的样子,如果这个时间内仍然定位不到元素,就会抛出异常,中止脚本执行.我们可以通过在 ...

  4. python显示等待和隐式等待_荐selenium内的隐式等待和显示等待的区别

    selenium的页面等待有显示等待和隐式等待 大多数Web应用程序都是使用Ajax和Javascript开发的.当浏览器加载页面时,我们想要与之交互的元素可能以不同的时间间隔加载. 它不仅难以识别元 ...

  5. Selenium显示等待和隐式等待

    在调试代码的时候经常会遇到,selenium元素定位有时有效有时无效,先比较下 Selenium显示等待和隐式等待的区别 1.selenium的显示等待 原理:显示等待,就是明确的要等到某个元素的出现 ...

  6. selenium 的显示等待与隐式等待

    现在很多的网页都采用了 Ajax 技术,那么采用一般的静态爬虫技术会出现抓取不到页面的元素.比如歌曲的主页会有评论数量,一般评论数量是动态加载的. 所以这就涉及到selenium,支持各种浏览器,包括 ...

  7. Selenium的显示等待和隐式等待

    Selenium的显示等待和隐式等待 隐式等待 当使用了隐式等待执行测试的时候,如果WebDriver没有在DOM中找到元素,将继续等待,超出设定时间后则抛出找不到元素的异常, 换句话说,当查找元素或 ...

  8. selenium中的三种等待方式以及显示等待和隐式等待区别

    selenium的三种等待方式 selenium中一般分为三种等待方式:显示等待.隐式等待.sleep强制等待 1.显示等待(有条件) 程序提前指定等待条件和等待时间,在查找元素时,判断规定时间内是否 ...

  9. 强制等待、显示等待和隐式等待

    selenium和appium中强制等待.显示等待和隐式等待的区别: 强制等待 time.sleep() 设置固定的线程休眠时间. 显示等待 WebDriverWait() 比如: driver = ...

  10. selenium中强制等待,隐式等待,显示等待的区别

    1.强制等待:time.sleep() 最简单的等待方式,缺点:设置时间短了没用,长了又浪费时间 2.隐式等待: 隐式等待是全局的是针对所有元素,设置等待时间如10秒,如果10 秒内出现,则继续向下, ...

最新文章

  1. ValueError: invalid literal for int() with base 10
  2. linux mysql 5.0.45_RedHat糸列Mysql-5.0.45的安装
  3. sql server 交叉表查询实例-成绩统计
  4. 获得Google搜索字符串中的关键字
  5. ubuntu 16.04 挂载新硬盘
  6. 容器编排技术 -- Kubernetes kubectl create configmap 命令详解
  7. 2017年15佳Android黑客应用
  8. jQuery操作Table学习总结(转)
  9. 苹果市值超过微软成第一大科技公司
  10. 20155303 2016-2017-2 《Java程序设计》第一周学习总结
  11. ArcGIS 设置暂时固定存储地址
  12. 为CMUSphinx训练声学模型教程手册
  13. 魏武帝 太祖知不可匡正,遂不复献言
  14. 图论算法真的那么难吗?知识点都在这了……
  15. DSP6678使用NDK网口通信
  16. 淘宝商品爬虫实战笔记
  17. origin2021软件
  18. 金山云个人用户实名认证步骤详解(图文教程)
  19. 笔记本计算机待机后显示器,Win10笔记本电脑休眠唤醒后屏幕还是黑屏怎么办?...
  20. 求球体的表面积,体积公式

热门文章

  1. Fastreid 代码
  2. fs文件系统模块常用的API
  3. 报童卖报matlab,两个报童卖报的故事
  4. LeetCode刷题(61)~找出数组中的幸运数
  5. JavaWeb学习笔记7
  6. 解决iOS的H5页面卡顿以及键盘回落后留白问题
  7. Git 之 git tag标签使用
  8. [原创]ACPI.sys,从Windows到Bios的桥梁(2):Windows应用程序响应主板上GPIO(SCI)设备中断 软件篇
  9. java Date 和 Calendar类 万字详解(通俗易懂)
  10. 渗透综合靶场---SqlServer提权