APP自动化教程
APP自動(dòng)化教程
一、 Appium原理與安裝
1、app自動(dòng)化原理
如何通過(guò)代碼操作不同操作系統(tǒng)(ios/android)不同版本的手機(jī)終端?
如上圖我們編寫(xiě)自動(dòng)化腳本發(fā)命令給Appium Server,然后Appium Server再把命令給Andirold SDK 工具包,Android SDK 工具包 再去操作手機(jī)或者模擬機(jī)
2、APP環(huán)境搭建
2.1 安裝JDK、配置JDK環(huán)境變量,可以從網(wǎng)上下載 jdk-8u211-windows-x64.exe
安裝好之后,還需要添加一個(gè)環(huán)境變量 JAVA_HOME ,指定 值 為 jdk安裝目錄,比如
2.2 安裝配置 Android SDK
解壓SDK并配置SDK的環(huán)境變量
(1)SDK的下載
下載地址:http://tools.android-studio.org/index.php/sdk
下載之后解壓
進(jìn)入D:\android-sdk_r24.4.1-windows\android-sdk-windows目錄 雙擊SDK Manageer.exe下載響應(yīng)包
以下是三個(gè)安卓工具包必須安裝;只需下載最新版本就可以
附加設(shè)備extras
安卓版本:安裝和模擬器的安卓版本一致。我的安卓是7.1.2系統(tǒng)
(2)配置SDK環(huán)境變更
添加一個(gè) 環(huán)境變量 ANDROID_HOME ,設(shè)置值為sdk包解壓目錄,比如 D:\android-sdk_r24.4.1-windows\android-sdk-windows[
還推薦大家配置環(huán)境變量 PATH ,加入 adb所在目錄, D:\android-sdk_r24.4.1-windows\android-sdk-windows\tools
驗(yàn)證是否安裝并配置成功
在dos中輸入adby驗(yàn)證
2.3模擬器安裝
百度夜神模擬器下載,然后下一步、下一步安裝即可
A.啟動(dòng)設(shè)備的開(kāi)發(fā)者選項(xiàng),啟動(dòng)調(diào)試功能
設(shè)置-多處點(diǎn)擊版本號(hào)直接出現(xiàn)提升{開(kāi)發(fā)者選項(xiàng)}-返回上一步能看到開(kāi)著選項(xiàng)-點(diǎn)擊USB調(diào)試
B 輸入命令前:因?yàn)镾DK下的adb{在SDK目錄下}和模擬器nox_adb版本不一致,上一需要把SDK路徑下的adb.exe復(fù)制到模擬器的bin下,從命名為nox_adb.exe(替換前備份下nox_adb.ex)
2.4 Appium安裝
百度Appium下載,然后下一步、下一步安裝即可
2.5 安裝client編程庫(kù)
根據(jù)原理圖, 我們知道自動(dòng)化程序需要調(diào)用客戶(hù)端庫(kù)和 Appium Server 進(jìn)行通信。
因?yàn)槲覀兘榻BPython語(yǔ)言開(kāi)發(fā),所以當(dāng)然是用pip安裝,如下
pip install appium-python-client
3、desired Capabilites_APPIUM
desired_caps = {
‘platformName’: ‘Android’, # 被測(cè)手機(jī)是安卓
‘platformVersion’: ‘7.1.2’, # 手機(jī)安卓版本
‘deviceName’: ‘xxx’, # 設(shè)備名,安卓手機(jī)可以隨意填寫(xiě)
‘a(chǎn)ppPackage’: ‘com.xxx.xxx.beta’, # 啟動(dòng)APP Package名稱(chēng)
‘a(chǎn)ppActivity’: ‘com.xxx.xxx.activity.SplashActivity’, # 啟動(dòng)Activity名稱(chēng)
#‘unicodeKeyboard’: True, # 使用自帶輸入法,輸入中文時(shí)填True
#‘resetKeyboard’: True, # 執(zhí)行完程序恢復(fù)原來(lái)輸入法
‘noReset’: True, # 不要重置App
進(jìn)入啟動(dòng)頁(yè)面
3、常用ADB命令
3.1鏈接模擬器
Adb connect 127.0.0.1:62001
其他模擬器:雷神5555 夜神62001 mumu755
3.2查看連接的設(shè)備
Adb devices
3.3 查看包名
(1)沒(méi)有apk
如果你應(yīng)用已經(jīng)安裝在手機(jī)上了,可以直接打開(kāi)手機(jī)上該應(yīng)用,進(jìn)入到你要操作的界面
然后執(zhí)行
adb shell dumpsys activity recents | find “intent={”
會(huì)顯示如下,最近的 幾個(gè) activity 信息,
intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=tv.danmaku.bili/.ui.splash.SplashActivity}
intent={act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000300cmp=com.huawei.android.launcher/.unihome.UniHomeLauncher}
intent={flg=0x10804000 cmp=com.android.systemui/.recents.RecentsActivity bnds=[48,1378][10322746]}
intent={flg=0x10000000 cmp=com.tencent.mm/.ui.LauncherUI}
其中第一行就是當(dāng)前的應(yīng)用,我們特別關(guān)注最后
cmp=tv.danmaku.bili/.ui.splash.SplashActivity
應(yīng)用的package名稱(chēng)就是 tv.danmaku.bili
應(yīng)用的啟動(dòng)Activity就是 .ui.splash.SplashActivity
(2)有apk
如果你已經(jīng)獲取到了 apk,在命令行窗口執(zhí)行
d:\tools\androidsdk\build-tools\29.0.3\aapt.exe dump badging d:\tools\apk\bili.apk | find “package: name=”
輸出信息中,就有應(yīng)用的package名稱(chēng)
package: name=‘tv.danmaku.bili’ versionCode=‘5531000’ versionName=‘5.53.1’ platformBuildVersionName=‘5.53.1’ compileSdkVersion=‘28’ compileSdkVersionCodename=‘9’
在命令行窗口執(zhí)行
d:\tools\androidsdk\build-tools\29.0.3\aapt.exe dump badging d:\tools\apk\bili.apk | find “l(fā)aunchable-activity”
輸出信息中,就有應(yīng)用的啟動(dòng)Activity
launchable-activity: name=‘tv.danmaku.bili.ui.splash.SplashActivity’ label=‘’ icon=‘’
總結(jié)
- 上一篇: 智慧指间丨矿山、化工行业职业病危害因素监
- 下一篇: pajek数据格式