谢谢大家,我用 2 部手机定位相同的 一个控件,一个手机能 找到 resource-id,另一个定位不出来。
2 个手机都是 4.3 的系统,都 root 了,安装的相同的 apk 版本,等等。
直接上图,谢谢大家。
这问题挺有群. 大家看过来, 我记得之前也有人反馈过, 因为没有特定的环境, 所以其他人不太好追查.
厂商改了
@kasi
我们测试机中,华为的 3C 有该问题,小米的红米 测试手机版本的淘宝也有该问题
只有酷派的 S6 屏幕 5.5 寸的这款 可以完美获取控件属性。
我也遇到过类似的问题,就是某个版本,控件啥的都能获取到,下一个版本却都没有了。
然后去找开发,开发说没有改过,还说工具有问题。
后面又遇到 appium1.2.2 的一个比较严重的 bug, https://github.com/appium/appium/issues/3503 然后觉得自己学习可以,但是用在工作中有点坑,目前就放弃了这款工具。
#6 楼 @lihuazhang 这个问题有几个解决方法
使用 selendroid 可以让已经写的用例保持不变.
期待未来会有更强悍的封装, 可以在 robotium selendroid Uiautomator 之间自由的切换.
或者 appium 将来底层支持 robotium.
谢谢大家的回答。
@seveniruby
我觉得很可能跟安卓的版本有关系,我对比了几个手机的 子版本,它们略有不同。
我明天回去公司把 手机刷成一个版本,看看它们是否跟安卓 4.X.X 有关系,有结果会第一时间 share 给大家。
厂商一般都改了内核的 所以有些差异是可以理解的
谢谢大家,我目前测试了一台酷派大神的手机,升级后果然可识别 resource-id 这属性。
很可能是 @kasi 理解的,安卓手机的内核 或者 安卓系统的版本 被改动所导致的问题。
#3 楼 @seasoncool2011 我之前在用 uiautomatorviewer 定位的时候就是 4.4 的能定位,4.2 的不能定位 resource-id,之前遇到这个问题的时候去网上搜了一下,知道了是版本的原因,但知其然不知其所以然