macaca permission 解决方案

自动化测试安装APP提示信息,一直是一个棘手问题,还要macaca提供了目前来看比较完美的解决方案,通过UIAutomatorWD模块实施监控APP安装过程 看UIAutomatorWD源码如下

let args = `shell am instrument -w -r -e permissionPattern ${this.permissionPatterns} -e port ${this.proxyPort} -e class ${UIAUTOMATORWD.PACKAGE_NAME} ${UIAUTOMATORWD.TEST_PACKAGE}.test/${UIAUTOMATORWD.RUNNER_CLASS}`.split(' ');

我们只需要在desiredCapabilities申明中添加permissionPatterns参数就可以,下面是三种客户端示例:

  1. nodejs
desiredCapabilities:
  platformName: 'android'
  isWaitActivity: true
  activity: 'LoginActivity'
  permissionPatterns: '[\"继续安装\",\"下一步\",\"好\",\"允许\",\"确定\",\"我知道\"]'
  app: 'https://npmcdn.com/android-app-bootstrap@latest/android_app_bootstrap/build/outputs/apk/android_app_bootstrap-debug.apk'
  1. python
android = {'platformName': 'Android',
'app': 'https://npmcdn.com/android-app-bootstrap@latest/android_app_bootstrap/build/outputs/apk/android_app_bootstrap-debug.apk',
'udid': v, 'package': 'com.zhubajie.witkey','permissionPatterns': '[\\"安装\\",\\"允许\\"]'}
  1. java 参考Python

使用vivio真机测试过程中,偶尔在允许授权时,最后一个允许没有点击成功,所有在正在开始执行用例前,暂定授权的最长时间

当然也有其它解决方案来处理APP安装过程,比如在macaca初始化之前开启线程来处理安装,其间用uiautomator轮询查找定位点击,但这种方案在macaca打开APP的时候就没法点击类似于授权这样的按钮了,一个手机同时只能连接一个uiautomator

比较奇葩的oppo安装应用时需要手动输入密码,可能就需要两者结合了。。。

转载于:https://my.oschina.net/heli/blog/1621269

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值