airtest+pytest實戰教程01-環境配置


前言

airtest是一款跨平台的UI自動化編輯器,主要為游戲而設計,但同時也可以適用於移動端的自動化測試。

airtest里面有兩大體系,airtest和pocoui支撐着整個測試框架。

  • airtest
    • 主要通過圖像對比然后在界面上進行點擊和識別的操作。
  • pocoui
    • 該模塊功能很強大,與uiautomator2有異曲同工之妙。

下載安裝

進入官網下載安裝

點擊下載即可。

image.png

下載完成后是一個壓縮包。

解壓到一個文件夾中,比如我就是在D盤根目錄進行解壓的。解壓后打開文件夾。

找到AirtestIDE.exe雙擊打開。

QQ截圖20200620124721.png

打開后會彈出登錄界面,點擊skip跳過。

QQ截圖20200620124541.png

我們就進入到了主界面。

QQ截圖20200620124635.png

入門教程

這里我就不介紹了,官方教程里有一個5分鍾入門,可以打開看一看。

https://airtest.doc.io.netease.com/tutorial/1_quick_start_guide/

airtest也是需要編寫腳本的,使用的語言是python。

所以在學習這個工具的時候也需要一定的python基礎。

airtest同時支持2和3,推薦使用python3。

搭建環境

airtestIDE安裝好了,現在我們應該准備其他的環境。如adb,安卓設備環境。

ADB環境搭建

QQ截圖20200620125036.png

  • 配置環境變量。

QQ截圖20200620125057.png

  • 驗證adb安裝

    QQ截圖20200620125119.png

mumu模擬器

下載安裝網易mumu模擬器


由於沒有多余的安卓手機,自己也只有一個主力機。所以我只能考慮用模擬器進行本系列的教程。

百般挑選之后我選擇了網易的mumu模擬器。主要原因是它和airtestIDE同屬網易開發的,天然親近。

下載地址:http://mumu.163.com/

配置ADB

因為網易mumu是模擬器所以我們需要設置一下adb。

教程:http://mumu.163.com/2017/12/19/25241_730476.html

啟動鏈接

啟動airtest,啟動mumu模擬器

  • 在airtestIDE中可以看到箭頭1所指的區域,沒有出來設備
    QQ截圖20200620125141.png

  • 所以我們選擇箭頭2所指的選項,點擊遠程設備鏈接,點擊連接

QQ截圖20200620125207.png

  • 這時可以看到設備出來了。

QQ截圖20200620125228.png

  • 點擊connect右鍵的箭頭,選擇USE javacap,然后點擊connect

    此時airtest和mumu模擬器的鏈接就大功告成了。

QQ截圖20200620125250.png

配置說明

至於為什么要選擇javacap和安卓設備的鏈接問題,請移步官方提供的文檔:

http://airtest.netease.com/docs/cn/2_device_connection/3_emulator_connection.html

獲取APP包名

pycharm中已經成功鏈接了mumu模擬器,並打印出了設備的相關信息.

接下來我們就要獲取APP的包名,先看我們准備用那個app作為教程中所使用的app呢。

我在這里選擇的是智學網app進行測試,在mumu模擬器的應用市場就可以下載到。

QQ截圖20200620161419.png

接下來我們要獲取應用的包名,獲取包名我常用的有兩種方法。

adb命令行獲取包名

首先我們先查看一下mumu模擬器的版本。進入設置—關於里面。

QQ截圖20200620130702.png

是安卓6.0.1版本的。

  • MacOS系統

    • 安卓8.0以下
    adb shell dumpsys activity activities | grep mFocusedActivity
    
    • 安卓8.0以上
    adb shell dumpsys activity activities | grep mResumedActivity
    
  • Windows系統

    • 安卓8.0以下
    adb shell dumpsys activity activities | findstr mFocusedActivity
    
    • 安卓8.0以上
    adb shell dumpsys activity activities | findstr mResumedActivity
    

我們在mumu模擬器中運行智學網app,然后打開cmd。輸入Windows安卓8.0以下的命令。

注意:如果遇到報錯

error: no devices/emulators found

我們先在cmd中執行一下命令: adb connect 127.0.0.1:7555

然后再進行獲取包名的命令就可以了。

QQ截圖20200620164201.png

airtest獲取包名

那么在腳本中我們應該怎樣獲取包名呢,airtest已經為我們內置了一個獲取包名的方法:

首先我們導入airtest包中的Android模塊。

然后使用模塊的get_top_activity()獲取並打印出頂層的安卓活動。

運行腳本:請看圖片中箭頭所指部分。

QQ截圖20200620163948.png

可以看到打印結果的包名和活動名是不是和adb命令行獲取的一樣。

在airtest在獲取包名很簡單吧,當然ADB命令行獲取也更方便,不用導入腳本。

自己想使用那種方式安卓應用包名都可以。

進行到這里我們的airtest測試環境就配置好了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM