獲取到手機IP,這個IP端口就是下面deviceName的值。android
aapt dump badging apk文件路徑
這個步驟能夠安裝啓動APP,已安裝的會直接啓動。web
須要注意的是這裏若是使用Genymotion可能會報 Failure [INSTALL_FAILED_NO_MATCHING_ABIS] 這是由於模擬器實在x86
的處理器上運行,而手機通常都是RAM
架構的,因此得把模擬器刷成ARM
的才行(是否是這個緣由我不知道,百度你們都這樣說~),解決辦法就是下載對應的 Genymotion-ARM-Translation_v1.1.zip 壓縮包,而後拉入模擬器,重啓模擬器就能夠了(是否是感受很簡單,值得注意的是有的小夥伴好比我偶爾喜歡使用中文作文件夾,因此注意了這是會報錯的,最好是放在根目錄下,我這裏提供了幾個安卓版本對應的zip包,網上實在太難找了,鬼知道我下載了多少狗皮軟件。。。。提取碼:5pl4 )windows
# -*- coding: utf-8 -*- __author__ = 'Luke' from appium import webdriver # 定義字典,配置appium desired_caps = { 'platformName': 'Android', # 系統 'platformVersion': '5.0', # 版本 'deviceName': '192.168.184.107:5555', # 我這裏是模擬機 'app': r'D:\android\zalo.apk', # apk安裝包位置 'appPackage': 'com.zing.zalo', # apk的package,經過aapt命令查找 'appActivity': 'com.zing.zalo.ui.SplashActivity', # apk的launcherActivity,經過aapt命令查找 'noReset': True, # 重要參數,=True 恢復默認值,=False(缺省值) 每次都是從剛安裝app的狀態進入(格式化狀態),可能會顯示歡迎頁等 } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) # 鏈接appium,並將參數(字典)傳入
經常使用的識別元素工具備uiautomator和monitor,我選用的是monitor其餘的本身百度吧~架構
這個工具在android SDK文件夾下的tools中(本機地址D:\android\android-sdk-windows\tools),點擊啓動便可使用。app
這個能夠用JS、jQuery選擇器來理解,主要包含ID、Class、centent-desc、text、xpath來定位。ide
id
定位元素(find_element_by_id)元素的resource-id工具
惟一標識該元素的值(id有時候並不惟一)ui
通常優先根據id定位spa
driver.find_element_by_id('com.zing.zalo:id/btnLogin').click() # click爲點擊事件
class_name
定位元素content-desc
定位元素text
定位元素xpath
定位元素