Appium自动化测试三种等待方式

无论是APP自动化还是web自动化,写自动化用例必不可少的就是等待

一、设置等待的原因

运行自动化用例时,可能会因为当前页面没有加载完成,导致元素定位不到,从而引发用例执行失败的情况。

 常见因素有以下几种:

1、网络原因,弱网导致页面元素加载过慢

2、服务器处理请求原因

3、电脑配置原因

等待方式:

1、强制等待_sleep()

2、隐式等待_implicitly_wait()

3、显示等待_WebDriverWait()

二、强制等待(固定时间等待)

1、导入time包;import time

2、time.sleep(10)

全局等待10秒,这个方法非常不灵活,如果时间不够,用例继续报错,如果时间过多,影响执行效率。

三、隐式等待

driver.implicitly_wait(20)

webdriver提供的超时等待,如果webdriver没有在dem中找到元素,将进行等待,如果超出预设时间还没有找到,则抛出异常。对全局影响。

和sleep相比,他更加智能。

四、显示等待

WebDriverWait

等待页面加载完成,等到了某个元素,再继续执行后续代码,如果超过设置时间检测不到则抛出异常 

WebDriverWait(driver, timeout, poll_frequency=0.9, ignored_exceptions=None)

参数详解:

driver:WebDriver 的驱动程序(Ie, Firefox, Chrome 或远程)

timeout:最长超时时间,默认以秒为单位

poll_frequency:休眠时间的间隔(步长)时间,默认为 0.9 秒

ignored_exceptions:超时后的异常信息,默认情况下抛 NoSuchElementException 异常

WebDriverWai()一般由 unit()或 until_not()方法配合使用:

until(method, message=’’)      调用该方法提供的驱动程序作为一个参数,直到返回值不为 False。

until_not(method, message=’’)      调用该方法提供的驱动程序作为一个参数,直到返回值为 False。

等待方式对于自动化还是很重要的,与代码的通过率与执行速率息息相关,期待下一次更深入的学习。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tangcutudou

小白一枚,记录学习踩坑之路~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值