uiautomator2 使用注意的地方

uiautomator2项目地址:https://github.com/openatx/uiautomator2#basic-api-usages

下面记录一些自己在使用过程中的坑,仅供参考

1.通过weditor 明明可以看到text文本框,为什么使用d(text="xx")定位不到

    遇到这种情况,先观察weditor的页面,能不能直接定位到text的内容,如果不能直接定位到,需要想办法直接定位到才能执行相关的操作

    打个比方:有两层很薄很薄的纸叠加在一起,一张纸上写2,一张上面写1,2在上,1在下,虽然你透过纸可以看到1,但是毕竟隔了一张纸,你必须穿过上面的纸,才能找到第二张纸上面的1

    大概就是你想要找的元素不能直接看到,被遮挡了,这时候通过点击,或者滑动让你想要找到的元素直接暴露在视野范围内,然后就可以定位了

    如果不能滑动,那请直接通过坐标点击,不推荐坐标点击,因为坐标点击涉及到屏幕分辨率的问题,可能会比较头疼且容易报错

2.当你想要定位的元素是动态的怎么办?

    uiautomator2 提供了很多操作办法,基本上是继承Android的方法,比如wetcher,Selector

    更具体的可以移步:https://developer.android.com/reference/android/support/test/uiautomator/UiSelector  (可能需要tz)

    这里的文字就不是固定的,且这么矮,用坐标点击真的是。。爽酸,换个方法:

self.d(textContains="展开全部").click()   # 模糊匹配方法,区分大小写


uiautomator2还是很强大的,欢迎有问题随时交流~

 

  • 添加到短语集
     
    • 没有此单词集:立陶宛语 -> 中文(简体)...
       
    • 创建新的单词集...
  • 拷贝
  • 添加到短语集
     
    • 没有此单词集:英语 -> 中文(简体)...
       
    • 创建新的单词集...
  • 拷贝
  • 添加到短语集
     
    • 没有此单词集:立陶宛语 -> 中文(简体)...
       
    • 创建新的单词集...
  • 拷贝
posted @ 2019-12-06 14:23  绝世老中医  阅读(3746)  评论(0编辑  收藏  举报