前言:
- 測試的APP:億通行
- 手機型號:OPPO
- 系統:安卓10
一、安裝Python3.x
1.直接登錄Python官網 https://www.python.org/,下載最新版本即可
2.安裝Pycharm(下載.exe,直接安裝即可)
二、安裝Python3 Appium庫
1.打開Python3.x的安裝目錄,找到Scripts
文件夾執行
pip install Appium-Python-Client
2.使用Pycharm安裝
File → Settings → Project → Python Interpreter → 搜索Appium → 選擇點擊install即可
三、安裝Android SDK
直接進入官網下載Studio
https://developer.android.google.cn/studio/
注:需要注意的是安裝過程,SDK要選擇一個路徑,這個要記住,后面會用的
四、安裝JDK
直接進入官網下載
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
注:需要注意的是安裝過程,jdk要選擇一個路徑,這個要記住,后面會用的
五、安裝Appium
1.直接進入官網下載
2.安裝后雙擊打開
3.點擊Edit Configurations
4.配置路徑
這兩個路徑就是在安裝SDK與jdk的那兩個路徑,配置完成點擊Save and Restart
5.點擊Start Server
說明配置完成
6.點擊Start Inspector Session
7.輸入設備信息
配置信息說明
{ "platformName": "Android", # 測試的平台,安卓或者ios "platformVersion": "10", # 系統版本,此處代表安卓10 "deviceName": "OPPo", # 設備名稱,填手機型號就行,隨便填也可 "app": "C:\Users\xxx\Downloads\com.ddnapalon.calculator.gp_3.1.33_999349.apk", # app的安裝包的位置 "appPackage": "enfc.metro", # app的包名 "appActivity": "enfc.metro.main.MainActivity" # app的activity名 }
8.配置完成點擊Start Session,進入如下圖
9.補充
六、編寫測試腳本
1.腳本
# coding=utf-8 from appium import webdriver from selenium.webdriver.common.by import By from time import sleep import unittest # 配置信息,字典類型,直接復用上面的 Appium json就可以 desired_caps = { "platformName": "Android", "platformVersion": "10", "deviceName": "OPPo", #"app": "C:\\Users\\xxxx\\Downloads\\com.ddnapalon.calculator.gp_3.1.33_999349.apk", "appPackage": "enfc.metro", "appActivity": "enfc.metro.main.MainActivity" } class app_test(unittest.TestCase): def setUpClass(self): global driver # 傳入appium server的host+path,還有配置信息 driver = webdriver.Remote(command_executor='http://127.0.0.1:4723/wd/hub', desired_capabilities=desired_caps) def test_login(self): try: # 取消授權彈框 driver.find_element(By.ID, 'com.android.permissioncontroller:id/permission_deny_button').click() sleep(1) except: print("彈框取消失敗") else: # 點擊立即登錄 driver.find_element(By.ID, 'enfc.metro:id/tv_QrCode_Login_Go').click() sleep(2) # 點擊賬號密碼登錄 driver.find_element(By.ID, 'enfc.metro:id/login_bt_loginType').click() sleep(2) # 輸入手機號 driver.find_element(By.ID, 'enfc.metro:id/login_et_phone').send_keys("18845632356") sleep(2) # 輸入密碼 driver.find_element(By.ID, 'enfc.metro:id/login_et_sms').send_keys("123456") sleep(3) # 退出測試 driver.quit() if __name__ == '__main__': unittest.main()
2.Appium執行結果
3.手機運行效果
暫時無法上傳(o(╥﹏╥)o)
七、ADB相關補充
1.點擊此電腦,屬性
2.點擊高級系統設置,點擊環境變量
3.找到SDK里tools和platform-tools的文件路徑
4.環境變量界面,如圖,在下方的系統變量中新建
5.輸入變量名android 和 tools和platform-tools的文件路徑,點擊確定即可
6.在Path中添加剛剛的環境,選擇系統變量Path,點擊新建輸入%android%,點擊確定即可
7.cmd 輸入 adb
出現此圖配置完成
8.獲取應用包名以及Activity
1.連接設備 2.在設備上打開想要查看包名的應用 3.輸入adb shell dumpsys window | findstr mCurrentFocus
紅色:應用包名
藍色:啟動Activity名
八、真機設置
點擊設置 → 其他設置 → 開發者選項(打開開發者選項、打開USB調試、打開禁止權限監控)→ adb device(即可查看手機連接信息)
至此,配置結束
to be continued...