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还是很强大的,欢迎有问题随时交流~
- 添加到短语集
- 没有此单词集:立陶宛语 -> 中文(简体)...
- 创建新的单词集...
- 没有此单词集:立陶宛语 -> 中文(简体)...
- 拷贝
- 添加到短语集
- 没有此单词集:英语 -> 中文(简体)...
- 创建新的单词集...
- 没有此单词集:英语 -> 中文(简体)...
- 拷贝
- 添加到短语集
- 没有此单词集:立陶宛语 -> 中文(简体)...
- 创建新的单词集...
- 没有此单词集:立陶宛语 -> 中文(简体)...
- 拷贝
uiautomator2 使用注意的地方的更多相关文章
- UiAutomator2.0升级填坑记
UiAutomator2.0升级填坑记 SkySeraph May. 28th 2017 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点:www.sk ...
- uiautomator2.0的配置的两种方法
方法一(使用在线下载的方式导入依赖): 1.首先创建项目工程,创建的项目的android_api版本要与测试的android_api版本一致(24就是24 ,不能26或者17去兼容) 2.然后就是将本 ...
- Android自动化测试-UiAutomator2环境搭建
Android自动化测试-UiAutomator环境搭建(QQ交流群:490451176) 一.环境准备 1. 安装android sdk,并配置环境变量 2. 安装android studio,国内 ...
- 【Mac安装,ATX基于uiautomator2】之安装步骤
Mac系统下安装uiaotumator2: 参考网址:<uiautomator2>以及参考github官方文档 注意:下面有坑,如果你没有下面的问题请直接跳转到 1.安装uiaotumat ...
- Android自动化测试探索(四)uiautomator2简介和使用
uiautomator2简介 项目Git地址: https://github.com/openatx/uiautomator2 安装 #1. 安装 uiautomator2 使用pip进行安装, 注意 ...
- 解决VS2008在win7找不到输入序列号的地方
1.VS2008在Windows7 打开维护界面看不到可以输序列号的地方. 因为微软把他隐藏了. 2.我们可以借用工具把他显示出来 下载地址:http://www.zlsoft.com/techbbs ...
- 使用Google Closure Compiler高级压缩Javascript代码注意的几个地方
介绍 GCC(Google Closure Compiler)是由谷歌发布的Js代码压缩编译工具.它可以做到分析Js的代码,移除不需要的代码(dead code),并且去重写它,最后再进行压缩. 三种 ...
- eclipse项目上面有个红叉,但是没有任何地方有错误
eclipse项目上面有个红叉,但是没有任何地方有错误,clear,refresh,重启都试过了,依然没用, 后来我换了一个workspace,编译的时候提示: Description Resourc ...
- javascript中的一些核心知识点以及需要注意的地方
前言 近期杂事甚多,这些事情的积累对知识体系的提升有好处,但是却不能整理出来,也整理不出来 比如说我最近研究的Hybrid在线联调方案便过于依赖于业务,就算分享也不会有人读懂,若是抽一点来分享又意义不 ...
随机推荐
- navigator组件(相当于a标签)
navigator组件:页面链接: navigator组件属性: target:类型 字符串 在哪个目标上发生跳转,默认当前小程序 属性值:self 当前小程序 miniProgram 其他小程序 u ...
- Markdown Memo(memorandum)
居中 html语法 <center>居中</center> 左对齐 <p align="left">左对齐</p> 右对齐 < ...
- 查看linux显卡序列
1 lspci -vnn | grep VGA -A 12会输出显卡的硬件信息,第一行的第二个[]内是显卡的序列号2 在网站http://pci-ids.ucw.cz/read/PC/ 下方输入序列号 ...
- bootstrap-select控件全选,全不选,查询功能实现
先引入先在你的页面引入 bootstrap-select.css 和 bootstrap-select.js <link href="~/Content/plugins/bootstr ...
- Pku2054 Color a Tree
有一个N个结点的有根树,1是这个树的根.现在要对这N个结点依次进行染色,每个结点染色要花费1个单位的时候,同时要满足一个结点仅在其父亲被染色后才可被染色,每个结点有个权值Ci,如果我们在第Ti时间对i ...
- log4net 配置文件配置方法
转自:http://www.dozer.cc/2013/06/log4net-config-file-order/ 最近把项目中所有的日志都改成了 log4net ,同事也蠢蠢欲动,用起了 log4n ...
- Intersection of Two Linked Lists(两个链表的第一个公共节点)
来源:https://leetcode.com/problems/intersection-of-two-linked-lists Write a program to find the node a ...
- C# TCPListener
1: 有两个地方必须做异常处理,异常类型为IOException 服务器读客户端发来的信息时: LeafTCPClient client = (LeafTCPClient)ar.AsyncState; ...
- jvm学习(2)JVM内存说明
前言 一.类方法 类方法是静态方法,前面需要有static修饰符修饰.类方法内不能涉及有关变量的内容1.不能调用类的对象方法2.不能引用对象变量3.类方法不能被重写(覆盖)4.类方法不能使用super ...
- 当系统开启safe_mode和 open_basedir
当系统开启safe_mode和 open_basedir,在程序中使用以下语句curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);并且遇到301,302状态吗时 ...