Selenium学习之三种等待方式

本文介绍了Selenium自动化测试中解决元素找不到问题的三种等待方式:time.sleep(固定等待)、implicitly_wait(隐式等待)和WebDriverWait(显式等待)。详细解析了每种等待方式的工作原理、优缺点及应用场景,特别强调了WebDriverWait的灵活性和控制性,并给出了使用示例。
摘要由CSDN通过智能技术生成

       最近在学习Selenium自动化测试的过程中,发现总是容易出现找不到元素的情况。通常这是因为元素还没加载出来,而我们的代码已经执行导致的,为了解决这个问题,Selenium中提供了三种等待方式:固定等待隐式等待显式等待

(一)time.sleep(固定等待)

这个方法我之前有用到过,在脚本调试的时候,设置这个固定等待,可以方便我们查看调试结果,但在实际使用的时候是不建议的。虽然它可以自定义等待时间,防止网络不好导致页面加载不出来时,太快去调用代码获取元素。但这个方法有个缺点,那就是网络状态良好时,也必须要等待固定的时间,而且需要在我们每一次想设置等待时间的地方都调用这个方法,所以它可能导致整个项目的执行时间无限延长。

打个比方说,我的网络状态良好,但因为设置了固定等待,本来10秒就可以跑完的自动化测试代码,只要哪里写了个time.sleep(30),那最少也得30秒才能跑完,大大浪费了测试时间。

(二)implicitly_wait(隐式等待)

隐式等待是设置一个最长等待时间,比如10秒,如果在10秒内的任何一个时间点,比如5秒的时候网页加载完成了,那么它就会在5秒的时候执行下一步,否则一直要等到10秒过去才会执行下一步。当然如果说10秒过去,还是没加载出来,那么在获取某个未加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值