Python笔记-UiSelector混合定位

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

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

是这样找的:

在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")

先找这个:

扫描二维码关注公众号,回复: 11473433 查看本文章

再找:

第三种是找找兄弟节点:

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")

这里是这样找的:

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

猜你喜欢

转载自blog.csdn.net/qq78442761/article/details/107480287