Appium 求助大神,怎么定位该元素呢, 用 uiautomatorviewer 查看该模块是整块的,我想定位具体的数字

Willa · 2019年01月10日 · 最后由 Willa 回复于 2019年01月18日 · 382 次阅读

求助大神,怎么定位该元素呢, 用UIAutomatorViewer查看该模块是整块的,我想定位具体的数字,试着加数组下标还是不行,求帮忙看看。

最佳回复
Willa 回复

我指的是手机屏幕上xy轴的相对坐标

你这Uiautomatorviewer是自己改造的吧。先获取父层控件的定位,然后再根据相对坐标进行定位就可以了。父窗体的坐标结合屏幕宽度的三分之一来动态计算你想要控件的坐标。这种方式通用性好,技术实现成本最低。其他的oc 图像识别也可以考虑,不过复杂了。appium的最新版本的client支持图形识别的。

Willa 回复

社区好多人发帖过啊,你没先搜索么?
https://testerhome.com/topics/16569

共收到 11 条回复 时间 点赞

不行, //android.widget.LinearLayout[@resourceid='com.tencent.mm:id/ak3']/android.widget.LinearLayout[1]/android.widget.LinearLayout[1],我改成 //android.widget.LinearLayout[@resource-id='com.tencent.mm:id/ak3']/android.widget.LinearLayout[1]/android.widget.LinearLayout[1][0]想定位数字1,提示找不到

Willa 回复

我指的是手机屏幕上xy轴的相对坐标

好的,谢谢,我试一下

获取这个支付框的class放到一个列表里面,通过坐标拿就行了,XY轴换个手机可能行不通,但是坐标来说可以因为键盘的排列很少变化。

你这Uiautomatorviewer是自己改造的吧。先获取父层控件的定位,然后再根据相对坐标进行定位就可以了。父窗体的坐标结合屏幕宽度的三分之一来动态计算你想要控件的坐标。这种方式通用性好,技术实现成本最低。其他的oc 图像识别也可以考虑,不过复杂了。appium的最新版本的client支持图形识别的。

说坐标的是没有考虑到这个支付键位是随机变化的。只能图像识别解决

hello 回复

图像识别就只能用Airtest工具了

谢谢大神·~

Willa 回复

社区好多人发帖过啊,你没先搜索么?
https://testerhome.com/topics/16569

11楼 已删除
Willa #12 · 2019年01月18日 作者

我已经解决啦,谢谢~~

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