欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python笔记-UiSelector混合定位

程序员文章站 2022-07-03 17:46:49
这里有如下几种方式完成功能。第一种是使用:布局找child:是这样找的:在android.widget.RelativeLayout下面的android:id/text1是“我的”,先找android.widget.RelativeLayout再找android:id/text1代码如下:import uiautomator2 as u2d = u2.connect_usb("8681-A01-0xc60fcc9d")d.app_start(package_name="....

这里有如下几种方式完成功能。

 

第一种是使用:布局找child:

是这样找的:

Python笔记-UiSelector混合定位

在android.widget.RelativeLayout下面的android:id/text1是“我的”,先找android.widget.RelativeLayout再找android:id/text1

代码如下:

import uiautomator2 as u2

d = u2.connect_usb("8681-A01-0xc60fcc9d")
d.app_start(package_name="com.wandoujia.phoenix2")
print("step 1")

#链式定位方式
d(className="android.widget.RelativeLayout").child(text="我的").click()

print("step 2")

 

第二种方式进行定位:

先找android.widget.RelativeLayout再找android:id/icon,这里是第5个所以是[4]

import uiautomator2 as u2

d = u2.connect_usb("8681-A01-0xc60fcc9d")
d.app_start(package_name="com.wandoujia.phoenix2")
print("step 1")

#链式定位方式
#d(className="android.widget.RelativeLayout").child(text="我的").click()

#完全的链式定位方法
d(className="android.widget.RelativeLayout").child(resourceId="android:id/icon")[4].click()

print("step 2")

先找这个:

Python笔记-UiSelector混合定位

再找:

Python笔记-UiSelector混合定位

第三种是找找兄弟节点:

import uiautomator2 as u2

d = u2.connect_usb("8681-A01-0xc60fcc9d")
d.app_start(package_name="com.wandoujia.phoenix2")
print("step 1")

#链式定位方式
#d(className="android.widget.RelativeLayout").child(text="我的").click()

#完全的链式定位方法
#d(className="android.widget.RelativeLayout").child(resourceId="android:id/icon")[4].click()

#找兄弟节点
d(resourceId="com.wandoujia.phoenix2:id/g8").sibling(resourceId="com.wandoujia.phoenix2:id/g8")[4].child(resourceId="android:id/icon").click()

print("step 2")

这里是这样找的:

Python笔记-UiSelector混合定位

下标为4,也就是第5个,然后找其child,这个child通过resourceId查找,其值为android:id/icon

 

本文地址:https://blog.csdn.net/qq78442761/article/details/107480287