0


软件测试/测试开发/全日制/测试管理丨selenium 经典的三种等待方式

在这里插入图片描述
在Selenium中,等待是一种重要的技术,用于处理页面加载和元素查找的时间差异。以下是Selenium中经典的三种等待方式:

隐式等待:

  • 描述: 隐式等待是在查找所有元素时设置的全局等待时间。一旦设置,它将在整个测试执行期间都起作用。
  • 用法: 设置隐式等待的代码通常在初始化WebDriver时完成,如下所示:
from selenium import webdriver

driver = webdriver.Chrome()
driver.implicitly_wait(10)# 设置等待时间为10秒
  • 作用: 如果WebDriver在查找元素时未立即找到,它将等待一段时间再次查找,直到找到元素或达到等待时间为止。

显式等待:

  • 描述: 显式等待是在特定条件下等待特定元素的等待方式。它允许你设置等待的最长时间,并在等待期间以一定的频率调用特定的条件,直到条件成立或超时。
  • 用法: 使用WebDriverWaitexpected_conditions库来定义等待条件,如下所示:
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

element = WebDriverWait(driver,10).until(
    EC.presence_of_element_located((By.ID,"myElement")))
  • 作用: 在等待时间内,显式等待会不断检查特定条件是否成立,一旦成立就继续执行后续代码,否则在超时后抛出异常。

强制等待:

  • 描述: 线程休眠是一种直接暂停执行的方式,不考虑元素是否已经加载完成。这是一种相对简单的等待方式,但不推荐在大多数情况下使用,因为它不够灵活,可能导致不必要的等待时间。
  • 用法: 使用time.sleep()函数来实现线程休眠,如下所示:
import time

time.sleep(5)# 休眠5秒
  • 作用: 线程休眠直接暂停执行指定的时间,无论元素是否已经准备好。

推荐

Python全栈开发与自动化测试开发班

由浅入深实战进阶,从小白到高手

以Python全栈开发为基础,深入教授自动化测试技能,为学员打造全面的技术能力。通过系统学习和实际项目实战,学员将具备在职场中脱颖而出的竞争力。不仅能够灵活运用Python进行开发,还能够保障项目质量通过自动化测试手段。这是一个全面提升职业竞争力的机会。

课程详情

Python开发必备基础技能与项目实战

Pvthon 编程语言/算法和数据结构/面向对象编程Web后端开发/前端开发/测试管理平台项目实战

人工智能ChatGPT实战

人工智能辅助学习各种开发和测试技能/Pytorch深度学框架/平台开发实战

数据分析与自动化办公

数据采集/Pandas与数据处理技术/ECharts与数据可视化技术/爬虫实战/自动化办公/批量文件处理

UI自动化测试与高级项目实战

Web自动化测试/App自动化测试/ PageObject设计模式

接口自动化测试

接口协议分析/Mock实战/服务端接口测试

性能测试

性能测试流程与方法/JMeter 脚本参数化/Grafana监控系统搭建

简历指导与模拟面试

1V1简历指导/模拟真实面试/测试开发岗面试全攻略名企私教服务 名企专家1v1辅导/行业专家技术指导/针对性解决工作难题/绩效提升辅导与晋升复盘

课程亮点

名企私教服务 先学习后付费 高额奖学金

专属社群+晚自习在线答疑

5V1全方位辅导作业+考试强化学习效果

简历修改 模拟面试 就业内推 面试复盘

image.png

福利一: 测试开发精品课免费学

image.png

福利二:免费领取技能图谱&大厂面试题合集

image.png

e4de1166c0b6a944f3fe30fdd71e77f.png


本文转载自: https://blog.csdn.net/Tester_muller/article/details/135551670
版权归原作者 软件测试大空翼 所有, 如有侵权,请联系我们删除。

“软件测试/测试开发/全日制/测试管理丨selenium 经典的三种等待方式”的评论:

还没有评论