appium進行元素識別的操作過程
阿新 • • 發佈:2020-08-04
前言:在安裝好appium環境和應用的基礎上(https://www.cnblogs.com/miaoxiaochao/p/13375314.html),開始進行元素識別:
appium工作原理
具體操作步驟:
1、先啟動android虛擬機器
2、開啟appium桌面版,進行啟動
3、開啟pycharm,編寫指令碼,定義一個Desired Capabilities配置的字典,再把配置的字典做為請求引數傳送給appium伺服器
Desired Capabilities配置的字典:
from appium import webdriver des={ "automationName":"Selendroid", #自動化引擎 "platformName":"Android", #裝置平臺名稱 ios、firefox "platformVersion":"8.0", #移動裝置系統版本 "deviceName":"Huawei P30 Pro",#裝置名稱,安卓可隨意填寫,ios需通過instruments -s devices獲取"udid":"192.168.56.101:5555", #終端輸入adb devices,可獲取udid
"app":"apk 包的絕對路徑",
"appPackage":"com.android.calculator2", #開啟的app包名
"appActivity":".Setting", #安卓不需要此引數
"noReset":True,
"unicodeKeyboard":True,
"resetKeyboard":True,
"newCommandTimeout":60 #等待時間 }
driver =webdriver.Remote('http://0.0.0.0:4723/wd/hub',des) #傳送到伺服器
appium伺服器初始化引數:https://www.cnblogs.com/miaoxiaochao/p/13430477.html
4、執行程式碼,能成功見到android虛擬機器啟動被測APP,點選appium桌面版的Start Inspector Session
輸入Desired Capabilitie
點選Start Session,會自動啟動android虛擬機器的app,並能在Inspector工具上顯示app介面,選擇Selecte Elements,點選頁面元素可以定位
5、基本元素定位api
1)id定位(取resource-id、id、name)
driver.find_element_by_id('')
2)class定位(取class)
driver.find_element_by_class_name('')
3)accessibilityId定位(取content-desc)
driver.find_element_by_accessbility_id('')
備註:其中name方式(取text)已不支援