解决关闭app权限弹框后无法识别页面对象问题

本文分享了在使用Appium进行安卓APP自动化测试时遇到的权限弹框处理及页面对象识别问题的解决经验。作者通过调整automationName为UiAutomator2、使用adb命令模拟点击、改进元素查找方式等手段,成功解决了小米6手机上的权限提示问题,并增强了页面对象的识别稳定性。

在使用appium进行安卓端app的自动化测试,我碰到这样下面这几个问题:

1、每次启动我的待测app时总会提示app权限

2、关闭完权限后,无法识别页面对象

 

第一个问题的解决,我更换不同的真机进行测试,弹框元素不一样,我写了一个类,专门来识别这些不一样的弹框,其中碰到一个问题,就是针对小米6手机进行真机测试的时候,

webdriver的click()无效,为了解决这个问题我增加了一种手机模拟点击操作(通过adb命令点击),解决了小米6手机上app权限弹框的关闭。

可是解决了上一个问题后就遇到了第二个问题,窗口关闭后不能识别页面对象。

这个问题困扰了我差不多2天时间,最后我改了几个地方完美解决:

1、把automationName改为UiAutomator2,改完需要重启appium才生效。

  UiAutomator2说明参考链接:https://www.jianshu.com/p/d8457a06c7b7

 

2、改完第一个后,出现了通过byname属性无法识别对象的问题。

尝试百更改appium的driver.js下的一个属性增加name也不能解决这个问题。然后找了很久发现,最新版本的appium提供的xpath完美替换通过byname属性查找问题。

参考链接:https://www.jianshu.com/p/6d71624cb5bb

 

做了上面的更改后还是不能很好的识别,为了增强我在查找元素的时候都做了一个切换到当前窗口的操作,后面就都正常识别了。

 

转载于:https://www.cnblogs.com/boqinyaxin/p/11097213.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值