一、環境準備
1.腳本語言:Python3.x IDE:安裝Pycharm
2.安裝Java JDK 、Android SDK
3.adb環境,path添加E:\Software\Android_SDK\platform-tools
4.安裝Appium for windows,官網地址 http://appium.io/
點擊下載按鈕會到GitHub的下載頁面,選擇對應平臺下載
安裝完成後,啓動Appium,host和port默認的即可,然後設置Android SDk和Java JDK
然後點下邊那個保存並重啓的按鈕,然後點第一個Start Server按鈕,將會看到
二、真機測試
1.連接手機
打開開發者模式,USB線連接手機和電腦,並且在開發者選項當中,開啓USB調試
測試是否連接成功,可執行命令adb devices
出現上圖就證明手機和電腦連接成功。。。
2.點擊Start Inspector Session
按如下配置Desired Capabilities
platformName :聲明是ios還是Android系統
platformVersion :Android內核版本號,可通過命令adb shell getprop ro.build.version.release查看
deviceName :連接的設備名稱,通過命令adb devices -l中model查看
appPackage :apk的包名
appActivity:apk的launcherActivity,通過命令adb shell dumpsys activity | findstr “mResume”查看(需先打開手機應用)
注意:Android 8.1之前應使用adb shell dumpsys activity | findstr “mFocus”
3.運行Start Session,選擇元素
右側 Selected Element 區域有三個按鈕
-
Tap:執行選中元素的點擊事件
-
Send Keys:爲文本框等對象傳值
-
如果是文本輸入元素,就清除文本
4.錄製腳本
錄製生成的python代碼如下:
如果對軟件測試、接口測試、自動化測試、面試經驗交流。感興趣可以關注我們愛碼小士,公衆號內會有不定期的發放免費的資料鏈接,還有同行一起技術交流。這些資料都是從各個技術網站蒐集、整理出來的,如果你有好的學習資料可以私聊發我,我會註明出處之後分享給大家。
# This sample code uses the Appium python client
# pip install Appium-Python-Client
# Then you can paste this into a file and simply run with Python
from appium import webdriver
caps = {}
caps["platformName"] = "Android"
caps["platformVersion"] = "9.0.0"
caps["deviceName"] = "Mi_Note_3"
caps["appPackage"] = "com.antfortune.wealth"
caps["appActivity"] = "com.alipay.mobile.quinox.LauncherActivity"
caps["resetKeyboard"] = True
caps["unicodeKeyboard"] = True
driver = webdriver.Remote("http://localhost:4723/wd/hub", caps)
el1 = driver.find_element_by_id("com.antfortune.wealth.login:id/login_main_button")
el1.click()
el2 = driver.find_element_by_id("com.alipay.mobile.accountauthbiz:id/auth_login_btn")
el2.click()
driver.quit()
5.在pycharm中建立項目將代碼粘入,在運行之前,還需通過pip命令安裝pip install Appium-Python-Client依賴包
最後,記一個我在這些過程中遇到的問題(現已解決)
在Appium-desktop中運行Start Session時,出現
解決方法:在開發者模式下,打開usb調試功能和use模擬點擊,兩個都要打開,此時再重新運行,即可解決
歡迎贊同,評論,關注~禮貌三連罒ω罒