如何使用Python和UIAutomator
在我的例子中,我有一个包含一些数据的呼叫列表,我想测试显示的呼叫数是否正确,并在列表中搜索特定的号码。 下面的练习是我想验证计数(以确保不会超过100)然后搜索部分调用的重复节点
<node index="4" text="" resource-id="com.myd.dialer:id/fragment_recent_list_view" class="android.widget.ListView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="true" scrollable="true" long-clickable="false" password="false" selected="false" bounds="[11,193][789,1145]">
<node index="0" text="" resource-id="" class="android.widget.RelativeLayout" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[11,193][789,301]">
<node index="0" text="1002" resource-id="com.myd.dialer:id/list_item_recent_text_view_name" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[86,204][432,247]" />
<node index="1" text="11/07 08:40" resource-id="com.myd.dialer:id/list_item_recent_text_view_date" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[432,204][778,247]" />
<node index="2" text="00:00:00" resource-id="com.myd.dialer:id/list_item_recent_text_view_duration" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[184,247][778,290]" />
</node>
<node index="1" text="" resource-id="" class="android.widget.RelativeLayout" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[11,302][789,410]">
<node index="0" text="1004" resource-id="com.myd.dialer:id/list_item_recent_text_view_name" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[86,313][432,356]" />
<node index="1" text="11/07 08:40" resource-id="com.myd.dialer:id/list_item_recent_text_view_date" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[432,313][778,356]" />
<node index="2" text="00:00:00" resource-id="com.myd.dialer:id/list_item_recent_text_view_duration" class="android.widget.TextView" package="com.myd.dialer" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[184,356][778,399]" />
</node>
...
</node>
我能做到:
listViewObj = dev(resourceIdMatches="com.myd.dialer:id/fragment_recent_list_view")
listViewObj.fling.toEnd() #will scroll to end of list
print("listViewObj count = ".format(str(listViewObj.count))) # this is 0?
# get name objects
objs = dev(resourceIdMatches="com.myd.dialer:id/list_item_recent_text_view_name")
cnt = objs.count # giving 9 not 99 or 100 etc (9 can show on the screen)
print("obs count = {}".format(str(cnt)))
for o in objs:
print("{}".format(o.info['text'])) # will print text item
但这只会给我计数(并打印)屏幕上的项目。
我怎样才能访问整个列表
谢谢你
目前没有回答
相关问题 更多 >
编程相关推荐