Appium 微信的数字键盘屏蔽了 appium 的键盘输入事件该如何处理?

小飞哥 · 2018年10月30日 · 最后由 小飞哥 回复于 2018年10月31日 · 3062 次阅读

在做微信小程序的自动化时,针对小程序页面中的数字输入框,有些页面点击输入框后会调起腾讯的数字小键盘,此时键盘会屏蔽掉 appium 的键盘输入事件而无法直接输入,另外页面的属性也由 webview 页面变为 native 页面,目前我在处理此类页面时采用的是不停切换 context 的方式,这样处理比较繁琐,但感觉也是唯一的方法了,具体如下:

比如一个登陆操作
1、下面这个登录页面,打开后是一个纯粹的 webview 页

经过 chrome://inspect 查看,但你想要用 sendkeys() 操作却不行

2、此时需要先执行 click(),click 之后你会发现页面属性又变成了 NATIVE(原因是由于 click 后调起了腾讯数字键盘,键盘屏蔽了输入事件)

3、要想实现 input 的输入,那就需要页面从 webview 切换到 native,只能点击 native 自定义的 view 来输入,输入完手机号后,收起小键盘,再次把页面由 native 切换到 webview 去做验证码输入框的点击,后面的操作与手机号输入框的类似,具体操作步骤上代码:

不知道是否有更简便的操作方法能简化我的步骤呢?欢迎指教

共收到 6 条回复 时间 点赞

用 OCR 或者图像识别吧

笑哼 回复

https://testerhome.com/topics/16569 利用图像识别技术解决非原生控件的定位问题

appium 对小程序支持并不好,了解一下腾讯刚出的 FAutotest,论坛里就有介绍

笑哼 回复

赞,我要研究下

hello 回复

多谢分享👊

我也考虑过后期慢慢转过来,先提前了解下

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册