• uiautomatorviewer获取控件元素增强版


    优先级策略
    1.如果只包含resource-id,且唯一,则直接用resource-id,其Xpath为://android.XX.XXX[@resource-id="com.duowan.mobile:id/rb_main"]

    2.如果只存在text,且唯一,则直接用text,其Xpath为://android.XX.XXX[@text="直播"]

    3.如果只存在content-desc,且唯一,则直接用content-desc,其Xpath为://android.XX.XXX[@content-desc="热门推荐"]

    4.如果不满足1/2/3,且存在resource-id、text、content-desc,三者取其二或者取其三能唯一定位,则其Xpath类似:

    //X.XX.XXX[@resource-id="abc" and @text="狂热" and @content-desc="推荐"]

    5.如果不满足1/2/3/4,则递归地寻找其父节点,直到找到唯一。再从其父节点开始,取绝对路径(元素索引),加起来唯一定位,其Xpath类似:

    //X.XX.XXX[@resource-id="android:id/list"]/X.XX.XXX[1]/X.XX.XXX[2]

    此处有同学有疑惑,再详细说一下:

    比如要找A节点  A不能用上面的方法唯一定位,但是A有父节点 或父节点的父节点, 可以被唯一定位,则用离他最近的能唯一定位的父节点 加上从其到A节点的绝对路径来定位

    6.以上全不满足,则给出其绝对路径(元素索引),来唯一定位,其Xpath类似:

    //X.XX.XXX[1]/X.XX.XXX[2]/X.XX.XXX[5]/X.XX.XXX[2]
    ————————————————

    链接:https://pan.baidu.com/s/1D430AyJCwhlRs0Qiz5OP7Q
    提取码:x8cs

  • 相关阅读:
    Android实现资料收藏
    GPS(Global Positioning System)全球定位系统
    Android开发环境搭建全程演示(jdk+eclipse+android sdk)
    ADT在线安装
    简洁判断一个byte中有多少位为1的bit?
    tomcat部署java项目
    centos7把编译安装的服务通过systemctl管理
    ansible自动化部署
    redi通过哨兵sentinel实现主从切换
    redis实现集群加主从复制
  • 原文地址:https://www.cnblogs.com/lyongyong/p/12503613.html
Copyright © 2020-2023  润新知