前言? ?
前面兩篇環(huán)境已經(jīng)搭建好了剿配,接下來(lái)就是需要啟動(dòng)APP荸镊,如何啟動(dòng)app呢咽斧?首先要獲取包名,然后獲取launcherActivity躬存。獲取這兩個(gè)關(guān)鍵東西的方法很多张惹,這里就不一一多說(shuō),小伙伴們可以各顯神通岭洲。小編這里主要給大家推薦一個(gè)sdk自帶的實(shí)用工具aapt.?
aapt即Android Asset Packaging Tool宛逗,在SDK的build-tools目錄下。該工具可以查看apk包名和launcherActivity盾剩,當(dāng)然還有更多的功能拧额,有興趣的可以查看相關(guān)資料。
一彪腔、下載aapt
? ? 1.在android-sdk里面雙擊SDK-manager,下載buidl-tools
? ? 2.勾選build-tools侥锦,隨便選一個(gè)版本,我這里選的是24的版本
? ? 3.下載完成后德挣,在D:\androidsdk\android-sdk-windows\build-tools\24.0.0目錄下找到aapt.exe恭垦,將這個(gè)路徑設(shè)置環(huán)境變量,添加到path下
? ? 4.打開(kāi)cmd格嗅。輸入aapt出現(xiàn)如下界面番挺,說(shuō)明環(huán)境OK了
二、獲取apk包名
? ? 1.將準(zhǔn)備測(cè)試的APK放到D盤(pán)某個(gè)目錄屯掖,如D:\test
? ? 2.打開(kāi)cmd,輸入指令aapt dump badging D:\test\xxx.apk(APK的全名玄柏,如手機(jī)淘寶.apk)
? ?3.以手機(jī)淘寶.apk為例,如下圖
? ? 4.這里就可以看到apk的包名:com.taobao.taobao
注:老司機(jī)可以直接把a(bǔ)pk放在桌面上贴铜,輸入指令后拖到cmd框
三粪摘、獲取launcherActivity
? ? 1.接著上一步操作,cmd屏幕拖到中間l找到auncherActivity
? ? 2.這里可以看到绍坝,淘寶的launcherActivity值為com.taobao.tao.welcome.Welcome
四徘意、寫(xiě)腳本
? ? 1platformName:這里是android的apk
? ? 2.deviceName:手機(jī)設(shè)備名稱(chēng),通過(guò)adb devices查看
? ? 3.platformVersion:android系統(tǒng)的版本號(hào)
? ? 4.appPackage:apk包名
? ? 5.appActivity:apk的launcherActivity
五轩褐、運(yùn)行appium
? ? 1.啟動(dòng)appium,右上角點(diǎn)三角形按鈕椎咧,變成正方形,就是啟動(dòng)狀態(tài)把介。
? ? 2.確認(rèn)手機(jī)連上電腦
? ? 3.在pycharm運(yùn)行腳本勤讽,隨后在手機(jī)上會(huì)彈出安裝下面兩個(gè)軟件的提示蟋座,安裝后,桌面上多兩個(gè)圖標(biāo)脚牍。那么恭喜你啟動(dòng)成功向臀!
? ? 4.接著會(huì)看到淘寶app已經(jīng)啟動(dòng)啦,有木有小激動(dòng)~~
六莫矗、最終代碼如下
# coding=utf-8
from appium import webdriver
desired_caps = {
? ? ? ? ? ? ? ? 'platformName': 'Android',
? ? ? ? ? ? ? ? 'deviceName': '30d4e606',
? ? ? ? ? ? ? ? 'platformVersion': '5.0',
? ? ? ? ? ? ? ? # apk包名
? ? ? ? ? ? ? ? 'appPackage': 'com.taobao.taobao',
? ? ? ? ? ? ? ? # apk的launcherActivity
? ? ? ? ? ? ? ? 'appActivity': 'com.taobao.tao.welcome.Welcome'
? ? ? ? ? ? ? ? }
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
這個(gè)地址是怎么來(lái)的呢?
這一篇主要學(xué)會(huì)使用aapt工具砂缩,然后啟動(dòng)app的一個(gè)流程作谚,啟動(dòng)app后,下一步就是要定位元素了庵芭,定位元素android sdk里面用一個(gè)自帶的uiautomatorviewer妹懒,appium里面也有一個(gè)Inspector,下篇會(huì)詳細(xì)介紹。