環境搭建見 01 APP 自動化-環境搭建
文章目錄
- 一、Appium及Appium自動化測試原理
- 二、Appium 自動化配置項
- 三、常見 ADB 命令
- 四、第一個 app 自動化腳本
一、Appium及Appium自動化測試原理
Appium 跨平臺、開源的 app 自動化測試框架,用來測試 app 應用程序,支持Android/iOS 操作系統
為什么通過代碼操作不同的操作系統(Android/IOS)不同版本的手機終端的應用程序?
- web自動測試:如何通過代碼,實現操作pc端的瀏覽器進行對應的操作?
代碼->selenium 中 webdriver->xxx瀏覽器驅動->操控瀏覽器實現對應操作
- app自動化測試: 代碼-----? 操控手機端的應用程序,實現對應 app 自動化測試
二、Appium 自動化配置項
不同系統不同版本可能用到不同的軟件包/框架----》python 腳本指定操作終端的這些參數設置
Desired Capabilities - Appium
常用必備參數:
- platformName 操作系統(iOS/android) Android
- platformVersion 系統版本 16.0
- deviceName 設備名稱 127.0.0.1:62001
- app/appPackage 包名 ‘com.tal.kaoyan’
- appActivity 入口啟動頁面 ‘com.tal.kaoyan.ui.activity.SplashActivity’ —Android only
{"platformName": "iOS","appium:options": {"platformVersion": "14.4","deviceName": "iPhone 11","app": "Some-App.app.zip","automationName": "XCUITest"}
三、常見 ADB 命令
ADB 命令:命令調試橋
- 1、連接模擬器 命令:
- 查看連接設備:
adb devices
或者 連接設備:adb connect 127.0.0.1:62001
- 不同模擬器端口號不同:雷神:5555 夜神:62001 mumu:7555 逍遙:21503
- 查看連接設備:
- 2、獲取包名及入口啟動頁面
aapt dump badging 包路徑
- 進入 aapt.exe 所在的路徑(D:\Andriod_SDK\Andriod_SDK\build-tools\29.0.3)或者把所在路徑也配置到系統變量中
- 再輸入命令
:aapt dump badging C:\Users\x\Desktop\kaoyan3.1.0.apk
- 注意:包路徑
不要包含中文
- 獲取包名:
- 獲取啟動頁面appActivity 的值:
四、第一個 app 自動化腳本
以上環境配置完成后,按照下面步驟,即可實現 app 自動化啟動
1、通過 appium
命令啟動 appium server 服務
2、電腦鏈接手機,或者打開模擬器
- 通過
adb devices
查看連接狀態,保證是已連接狀態 - 若不是連接狀態,通過
adb connect 127.0.0.1:62001
命令連接設備
3、編寫以下腳本代碼進行運行:
# -*- coding=utf-8 -*-from appium import webdriver
from appium.options.android import UiAutomator2Options# 設置操作終端的配置參數
desired_caps = dict(platformName='Android', # 指定操作系統platformVersion='7.1.2',# 指定操作系統版本automationName='Uiautomator2',# 默認框架deviceName='127.0.0.1:62001',# 指定設備名稱appPackage='com.tal.kaoyan',# 被操作的應用程序包名appActivity='com.tal.kaoyan.ui.activity.SplashActivity',# 啟動頁面noReset='false',# true--不重置 false--重置app='F:\Pycharm\AppAuto\kaoyan3.1.0.apk' # apk文件所在路徑
)
# 發送命令給 appium server
driver = webdriver.Remote('http://127.0.0.1:4723', options=UiAutomator2Options().load_capabilities(desired_caps))
具體實現原理:
-
1、自動化腳本發送 http 請求到 appium server
-
2、創建會話 session
-
3、確認終端設備是否連接,并且確認安卓的版本 確認設置其他參數與終端是否一致
-
4、 appium會推送一個包 ‘AppiumBootstrap.jar’
AppiumBootstrap.jar:實現 appium server 與手機終端進行數據交互 -
5、下一個 http 請求