1. 程式人生 > >Python3+Appium學習筆記03-啟動app

Python3+Appium學習筆記03-啟動app

img api oba sca ESS 連接 ref form color

這個是appium相關的官方api地址:http://appium.io/docs/en/about-appium/api/

如同selenium進行自動化測試時,需要先創建一個瀏覽器實例一樣。在使用appium進行自動化測試時,需要先創建一個被測app的實例。下圖是官網給的示例,emmm貌似開頭重復了。技術分享圖片技術分享圖片?

所以創建一個app實例是通過Remote()方法來的,其中第一個參數是appium服務端的地址,第二個參數是具體的請求內容

看文檔好像是一個post請求,這個請求內容是一個json格式的請求實體

官網的示例只給了一些必須的參數。很多其他的參數我也沒在官網看到。如果有需要可以百度一下。感覺知道幾個必須的暫時夠用了

platformName 被測試設備的系統

platformVersion 被測試設備系統版本號

deviceName 被測試設備的設備名

上面三個字段應該是必傳字段

autoLaunch 是否自動安裝並啟動應用

app apk安裝路徑

appPackage apk包名

appActivity apk入口

對於安卓機器來說,app這個參數就是重新裝apk並啟動。appPackage和appActivity就是從手機已有的應用啟動。根據實際情況可以選擇哪個模式。app參數的優先級貌似高於另外兩個。

接下來看下怎麽獲取相關參數的數據

deviceName可以通過cmd命令行輸入adb devices命令來獲得

技術分享圖片技術分享圖片?

appPackage和appActivity獲取的方式很多。網上有很多方式介紹。推薦較多的是通過aapt去從apk包裏找出相應信息。但是返回的信息較多。

我使用的方式是手機連接電腦,然後打開你想要測試的應用。cmd中輸入命令adb shell "dumpsys activity | grep mFocusedActivity" 比如打開淘寶

技術分享圖片技術分享圖片?

第一個com.taobao.taobao是包名。第二個com.taobao.tao.TBMainActivity就是入口

接下來看下代碼效果

1.首先打開appium

技術分享圖片技術分享圖片?

2.點擊啟動服務器

技術分享圖片技術分享圖片?

3.如果是通過代碼的話,到這一步就可以了。如果想通過appium desktop去啟用的話可以點啟動會話按鈕,把相應參數添加進去就可以了

技術分享圖片技術分享圖片?

4.代碼需要請求的服務器地址

技術分享圖片技術分享圖片?

5.具體代碼

from appium import webdriver

desired_caps = {
    platformName: Android,
    platformVersion: 7.1.2,
    deviceName: 1b6ca8f,
    appPackage: com.taobao.taobao,
    appActivity: com.taobao.tao.TBMainActivity
}
webdriver.Remote(127.0.0.1:4723/wd/hub, desired_caps)

我這邊是啟動成功了,第一次使用時,應該會在手機上請求安裝一個Appium settings的app。另外就是啟動app時會有一些授權提示,比如定位信息等。這些只能手動點下。貌似還沒有辦法代碼通過。

也可以試下app參數去安裝

Python3+Appium學習筆記03-啟動app