UI自动化之使用poco进行元素的唯一定位

直接选择:

1.poco(text='买入').click()
2.poco("android.widget.ImageView").click()

相对选择、空间选择:

3.poco(text/name).parent().child()[0].click()

正则表达式:

4.list=poco(textMatches=".*ETF")

今天主要想记录下相对选择是怎么做的。

child():当前节点的子节点
children():当前节点的所有子节点
offspring():当前节点的子孙节点
parent():当前节点的父节点
sibling():当前节点的兄弟节点
child()和children()的使用区别:child()是有参数的,而children不带参数;
child(text=”ETF”)[0],不带参数的情况下,二者使用起来是没有区别的,都可以使用for 循环进行遍历,查找要寻找的元素。

注意:
使用相对选择+空间选择进行唯一定位页面上元素时,有时候会出现下标打印错误,需要【向下寻遍历】和【向上遍历】结合起来使用;并且同一次用位置信息打印时,不要滑动页面,否则打印出来的元素的位置信息会出现变化。

例如:使用相对选择(以“名称”为起点,找到“标普ETF”)找到目标元素的过程;

1.先确定要找的元素的位置; 标普ETF 【0.22,0.470625】
在这里插入图片描述
2.找到目标元素的父节点 【0.22,0.483125】
在这里插入图片描述
3.找到目标节点父节点的父节点 【0.22,0.630625】
在这里插入图片描述
4.可以看到,【相对节点】的【父节点】 和目标节点的【爷爷】节点 同为【兄弟节点】,向上找到爷爷节点就ok了
在这里插入图片描述
5.【相对节点】的【爷爷节点】 的【子孙节点】肯定能找到 我们要找的目标元素。
在这里插入图片描述
6.根据打印出来的下标 child()[3],发现打印出来的位置并不是我们要找的【元素的爷爷节点】的位置 所以3下标不对,一个个遍历,从child()[0]开始,打印到child()[11]的时候找到了。
在这里插入图片描述
7.遍历child()[11]找到【爷爷节点】
在这里插入图片描述
8.最后,一层一层继续向下遍历,直到找到目标元素;

a=poco(text=‘名称’).parent().parent().child()[11].child()[0].child()[0]
a1=poco(text=‘名称’).parent().parent().child()[11].child()[1].child()[0]
print(a,a.get_text(),a.attr(‘pos’))
print(a1,a1.get_text(),a1.attr(‘pos’))

poco(text=‘名称’).parent().parent().child(name=‘android.widget.Image’)[0].click()
poco(text=‘名称’).parent().parent().child(name=‘android.widget.Image’)[1].click()

相关推荐

  1. UI自动化Poco常用断言方式

    2024-02-21 14:18:03       30 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 14:18:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 14:18:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 14:18:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 14:18:03       20 阅读

热门阅读

  1. pytorch使用文档

    2024-02-21 14:18:03       23 阅读
  2. 代码随想录算法训练营第五十一天| 139.单词拆分

    2024-02-21 14:18:03       34 阅读
  3. Selenium Grid4.0 - 多台计算机上并行运行

    2024-02-21 14:18:03       34 阅读
  4. 本地项目如何连接远程git库

    2024-02-21 14:18:03       23 阅读
  5. 【Linux】安装ffmpeg

    2024-02-21 14:18:03       33 阅读
  6. el-table支持多页的多选

    2024-02-21 14:18:03       30 阅读
  7. C语言获取时间函数大全

    2024-02-21 14:18:03       28 阅读
  8. 记录 | 修改docker存储路径

    2024-02-21 14:18:03       26 阅读