App自動化測試之使用流程
1、打開Appium,模擬器或者真機,pycharm
2、確定設備(模擬器或者真機)是否在線
cmd:adb devices
3、啟動appium服務

4、編寫python自動化代碼
a. 導包
from appium.webdriver import Remote
b. 准備desired_capabilities參數
鍵 | 描述 | 值 |
---|---|---|
automationName | 自動化測試的引擎 | Appium (默認)或者 Selendroid |
platformName | 使用的手機操作系統 | iOS, Android, 或者 FirefoxOS |
platformVersion | 手機操作系統的版本 | 例如 7.1, 4.4 |
deviceName | 使用的手機或模擬器類型 | iPhone Simulator, Android Emulator, Galaxy S4, 等等 |
appPackage | 運行的 Android 應用的包名 | com.example.android.myApp, com.android.settings |
appActivity | Activity 的名字是指從你的包中所要啟動的 Android acticity。他通常需要再前面添加. |
MainActivity, .Settings |
app | 本地絕對路徑_或_遠程 http URL 所指向的一個安裝包(.ipa,.apk,或 .zip 文件)。如果您指定了 appPackage 和 appActivity 參數(見下文),Android 則不需要此參數了。 | /abs/path/to/my.apk 或 http://myapp.com/app.ipa |
unicodeKeyboard | 使用 Unicode 輸入法。 默認值為 false ,設置為true后才能輸入中文 | true或false |
resetKeyboard | 在設定了 unicodeKeyboard 關鍵字的 Unicode 測試結束后,重置輸入法到原有狀態,默認值為 false | true或false |
noReset | 在當前 session 下不會重置應用的狀態。默認值為 false,設置為true后,不需要每次運行用例都安裝apk | true或false |
caps = {
"platformName": "Android",
"automationName": "UiAutomator1",
"platformVersion": "5.1",
"deviceName": "emulator-5554",
"appActivity": ".CalculatorActivity",
"appPackage": "com.ibox.calculators",
"noReset": "false"
}
c. 連接appium服務器
端口要跟啟動appium服務的端口一致
driver = Remote(desired_capabilities=caps,
command_executor="http://localhost:4723/wd/hub")
# 通過driver就可以對App進行自動化操作
d. 運行python代碼
5、查看appium服務器運行日志

如何獲取平台版本 "platformVersion"
adb shell getprop ro.build.version.release
.png)
如何查看應用信息 “appPackage” 和 “appActivity”
cmd:aapt dump badging apk路徑
查詢當前所在的包名和activity
先在模擬器或者真機中打開需要查看的應用
cmd:adb shell dumpsys activity | find "mFocusedActivity"
注::如果在真機中使用上邊不行的話就換下面的
cmd: adb shell dumpsys activity | find "mResumedActivity"
appPackage:com.ibox.calculators
appActivity:.CalculatorActivity