目錄
一、準備工作
1、創建一個pthon腳本
2、光標位置 2、選擇Android 3、選擇yes
二、定位元素
三、poco基于設備/屏幕? 方式
1、poco.click( (x,y))基于屏幕點擊相對坐標為x,y的位置
2、poco.get_screen_size()
3、poco.swipe(v1,v2)基于屏幕從v1位置滑到到v2
?4、scroll("垂直/水平",百分比) 滑動
四、poco定位到元素方式?
1、ele = poco(屬性名=屬性值〕
2、ele.click ===> poco(屬性名=屬性值).click()點擊指定元素
3、ele.attr(屬性名)根據屬性名獲取元素指定的屬性值
4、ele.setattr(屬性名,屬性值)對指定元素的屬性重新賦值
5、ele.set_text("文本") 對指定元素設置文本值
6、ele.get_text()獲取元素的text屬性值
7、ele.swipe(坐標/方向)將指定元素滑到到某個位置/方向
8、ele.exists(判斷元素是否存在)
五、附錄
1、運行注意事項
?1.1 運行代碼注意這三個不要開啟,記得關閉
1.2 運行時這里需要時Andriod
前言:是一款基于UI控件識別的自動化測試框架,目前支持Unity3D/cocos2dx-*/Android原生app/iOS原生app/微信小程序,也可以在其他引擎中自行接入poco-sdk來使用
一、準備工作
1、創建一個pthon腳本
2、光標位置 2、選擇Android 3、選擇yes
from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)
?
二、定位元素
?Poco底層 是uiautomator實現的? ?下圖元素定位方式本教程第一篇文章有描述
三、poco基于設備/屏幕? 方式
poco.pocofw module — poco 1.0 文檔
1、poco.click( (x,y))基于屏幕點擊相對坐標為x,y的位置
# -*- encoding=utf8 -*-
__author__ = "cheng"from airtest.core.api import *
from airtest.cli.parser import cli_setupif not cli_setup():auto_setup(__file__, logdir=True, devices=["android://127.0.0.1:5037/127.0.0.1:7555?cap_method=ADBCAP&touch_method=MAXTOUCH&",])from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)# script content
print("start...")
poco.click([0.362,0.507])
2、poco.get_screen_size()
print(poco.get_screen_size())
3、poco.swipe(v1,v2)基于屏幕從v1位置滑到到v2
poco.swipe([0.36,0.87],[0.43,0.34]) # 點到點
poco.swipe([0.36,0.87],direction=[0,0.3]) # 點與方向
?4、scroll("垂直/水平",百分比) 滑動
poco.scroll("vertical", 0.5) # 水平
poco.scroll("horizontal", 0.5) # 垂直
四、poco定位到元素方式?
poco.proxy module — poco 1.0 文檔
1、ele = poco(屬性名=屬性值〕
如果找到多個元素是一個列表﹒如果能定位到唯一元素直接是個元素對象
poco(text="文檔掃描").click() # 定位到一個元素就是直接操作的對象
print(len(poco(name="com.youdao.note:id/item_top_view_image"))) # 定位到多個元素就是列表[]
2、ele.click ===> poco(屬性名=屬性值).click()點擊指定元素
poco(text="文檔掃描").click() # 定位到一個元素就是直接操作的對象
3、ele.attr(屬性名)根據屬性名獲取元素指定的屬性值
print(poco(text="文檔掃描").attr("text")) # 獲取文本屬性
4、ele.setattr(屬性名,屬性值)對指定元素的屬性重新賦值
poco(text="搜索筆記").setattr("text", "New Text")
5、ele.set_text("文本") 對指定元素設置文本值
poco(text="搜索筆記").set_text("搜索內容")
這個設置文本值,后續沒有回車等動作?
6、ele.get_text()獲取元素的text屬性值
print(poco(text="文檔掃描").get_text()) # 獲取文本屬性
7、ele.swipe(坐標/方向)將指定元素滑到到某個位置/方向
poco(text="沒有更多了~").swipe([0.4,0.4]) # 坐標
poco(text="沒有更多了~").swipe("up") # 方向
8、ele.exists(判斷元素是否存在)
print(poco(text="文檔掃描").exists()) # 判斷元素是否存在