Appium 分享一个自己觉得蛮好用的方法,获取可点击对象,请大神指正

eric · 2014年05月16日 · 最后由 思寒_seveniruby 回复于 2014年05月16日 · 987 次阅读
本帖已被设为精华帖!

先上代码
public List getClickableElementsByClassAndIndex(String classname,int index){
List lis =null;
lis = driver.findElementsByAndroidUIAutomator("new UiSelector().className("+classname+").index("+index+").clickable(true)");
return lis;
}

优点:
1、排除了多语言下 By.Name 方法的困扰;
2、排除了不同分辨率下坐标变化的困扰;
3、排除了 By.classname 返回一堆,影响速度的困扰;

请大神指正

共收到 3 条回复 时间 点赞

为什么参数这么多 跟可点击什么关系 你貌似都指定 index 了

eric #2 · 2014年05月16日 Author

@seveniruby 实际操作中 index 不能唯一定位一个对象啊,比如一个页面有 N 个 ImageView 对象,他们的 index 有几个是 0,有几个是 1,有几个是 2,有的能点击有的不能点击,那我就根据这些条件去筛选呀

#2 楼 @eric 我遇到过一种情况是 有些元素不能点击 但是他的父节点可以点击 在用户眼里 这些元素就是可点击的 所以完全靠 clickable 也不是特别合适

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