openatx / uiautomator2

Android Uiautomator2 Python Wrapper
MIT License
6.38k stars 1.37k forks source link

无法判断d().child()子元素是否存在 #877

Open molixiaoxiao opened 1 year ago

molixiaoxiao commented 1 year ago

如图,如果我已经下载了第2个魔表,这时候它右下角的下载icon图标会消失。我们需要根据此来判断是否成功下载。

从WEditor中可以看到resourceId="com.kwai.videoeditor:id/afz"这个第2个父节点下面的子节点resourceId="com.kwai.videoeditor:id/c3t"已经不存在了。 WX20230315-193106@2x

但是当我们去判断它存不存在时,则返回了True结果,如图:

print(d(resourceId="com.kwai.videoeditor:id/afz").count)
print(d(resourceId="com.kwai.videoeditor:id/c3t").count)

print(d(resourceId="com.kwai.videoeditor:id/afz", instance=0).child(resourceId="com.kwai.videoeditor:id/c3t").exists)
print(d(resourceId="com.kwai.videoeditor:id/afz", instance=1).child(resourceId="com.kwai.videoeditor:id/c3t").exists)
print(d(resourceId="com.kwai.videoeditor:id/afz", instance=2).child(resourceId="com.kwai.videoeditor:id/c3t").exists)
print(d(resourceId="com.kwai.videoeditor:id/afz", instance=3).child(resourceId="com.kwai.videoeditor:id/c3t").exists)

print("-------")
print(d(resourceId="com.kwai.videoeditor:id/c3t", `instance=1).exists)`

返回结果:
3
True
True
True
True
-------
True

WX20230315-193320@2x