一晶衷、簡(jiǎn)介
Appium Desktop是一款用于Mac聋丝、Windows和Linux的開(kāi)源應(yīng)用冰啃。它是Appium更為優(yōu)化的圖形界面和appium相關(guān)的工具的組合:
Appium-Server的圖形界面枫攀≠丝欤可以設(shè)置選項(xiàng)、啟動(dòng)/停止服務(wù)器入录、查看日志等功能蛤奥;且無(wú)須提前安裝Node / NPM,因?yàn)镹ode運(yùn)行時(shí)直接與Appium Desktop綁定僚稿。
可以使用AppiumDesktop自帶的Inspector來(lái)查看應(yīng)用程序的元素凡桥,并進(jìn)行基本的交互。
二贫奠、環(huán)境準(zhǔn)備
1. 下載并配置安卓SDK環(huán)境變量
2. 下載及安裝AppiumDesktop
- 根據(jù)自己的系統(tǒng)版本來(lái)下載 (點(diǎn)我查看系統(tǒng)版本)
- 64位:鏈接: https://pan.baidu.com/s/1a3-_X6WU9B48UWufePZOJQ 提取碼: pqfe
- 32位:鏈接: https://pan.baidu.com/s/1pBv7DpcMUB2kvsihu7vY3A 提取碼: 37m1
- 32位系統(tǒng)貌似有問(wèn)題唬血。。唤崭。
3. 安裝AppiumDesktop
安裝選擇所有用戶
4. 啟動(dòng)AppiumDesktop
點(diǎn)我啟動(dòng)
5.安裝Python3.x環(huán)境
- 若已經(jīng)裝了python環(huán)境則忽略這一步
- 教程傳送門(mén):http://www.runoob.com/python/python-install.html
6.安裝Appium的Python客戶端
在cmd里面運(yùn)行下面的代碼:
-
pip3 install Appium-Python-Client -i https://pypi.tuna.tsinghua.edu.cn/simple
成功的截圖
7. 安裝安卓模擬器
- 1.下載并安裝雷電模擬器:http://www.ldmnq.com/
- 2.打開(kāi)雷電模擬器
8.安裝被測(cè)APP:
- 傳送門(mén):鏈接: https://pan.baidu.com/s/1Yexgofqhb7w3F1U9RTBW_w 提取碼: fv7s
9.連接安卓設(shè)備
- 使用的是手機(jī):打開(kāi)安卓手機(jī)的USB調(diào)試拷恨,用數(shù)據(jù)線連接手機(jī)和電腦
- 使用的是模擬器:直接去執(zhí)行adb devices
-
在windows命令提示符中輸入:adb devices,能看到手機(jī)連上電腦既可
查看手機(jī)連接
三谢肾、運(yùn)行Python腳本
- 在VSCode中新建Python文件腕侄,并且輸入對(duì)應(yīng)代碼運(yùn)行查看效果
- 根據(jù)自己的手機(jī)來(lái)修改代碼中對(duì)應(yīng)的參數(shù)
# 1.導(dǎo)入appium的webdriver
from appium import webdriver
def get_driver():
"""
獲取設(shè)備driver
"""
desired_caps = {}
desired_caps['platformName'] = 'Android' # 打開(kāi)什么平臺(tái)的app,固定的 > 啟動(dòng)安卓平臺(tái)
desired_caps['platformVersion'] = '5.1.1' # 安卓系統(tǒng)的版本號(hào):adb shell getprop ro.build.version.release
desired_caps['deviceName'] = 'vivo x6plus d' # 手機(jī)/模擬器的型號(hào):adb shell getprop ro.product.model
desired_caps['appPackage'] = 'io.appium.android.apis' # app的名字:
# 安卓8.1之前:adb shell dumpsys activity | findstr "mFocusedActivity"
# 安卓8.1之后:adb shell dumpsys activity | findstr "mResume"
desired_caps['appActivity'] = '.ApiDemos' # 同上↑
desired_caps['unicodeKeyboard'] = True # 為了支持中文
desired_caps['resetKeyboard'] = True # 設(shè)置成appium自帶的鍵盤(pán)
# 去打開(kāi)app芦疏,并且返回當(dāng)前app的操作對(duì)象
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
return driver
def test():
"""
查找單個(gè)元素
"""
# 獲取driver
driver = get_driver()
# 通過(guò)id獲取元素:最準(zhǔn)確
app = driver.find_element_by_id("android:id/text1")
app.click()
# 返回鍵
driver.back()
# 通過(guò)text獲取元素
Animation = driver.find_element_by_android_uiautomator('new UiSelector().text("Animation")')
Animation.click()
# 返回鍵
driver.back()
# 通過(guò)content-desc來(lái)獲取元素
app = driver.find_element_by_accessibility_id("App")
app.click()
# 返回鍵
driver.back()
# 通過(guò)xpath獲取:使用最多
media = driver.find_element_by_xpath("http://android.widget.TextView[@text='Media' and @content-desc='Media']")
media.click()
if __name__ == "__main__":
test()
- 疑問(wèn)咨詢文件請(qǐng)加群:1084188341