Airtest自動化測試工具

一開始知道Airtest大概是在年初的時候,當時,看了一下官方的文檔,大概是相似Sikuli的一個工具,主要用來作遊戲自動化的,經過截圖的方式用來解決遊戲自動化測試的難題。最近,移動端測試的同事嘗試用它的poco庫來作自動化,看樣子還不錯,因此,這裏推薦給各位同窗。python

官方網站
http://airtest.netease.com/android


Airtest IDE

這是Airtest測試工具標配的IDE,目的是方便咱們用於錄製/編寫自動化測試。git

你可使用帳號登陸或直接點擊左下角「skip」按鈕跳過。shell

啓動Android模擬器或者用PC鏈接一臺手機。經過adb命令檢查移動設備。設計模式

> adb devices
List of devices attached
emulator-5554   device

當我在Android模擬器中操做時,Airtest IDE右側的界面是同步的,這一點比不少移動測試工具作的優秀,例如,appium desktop必須手動刷新才能獲取最新的界面。app


Airtest

Airtest IDE支持Airtest腳本的錄製,用法很是簡單,你甚至能夠先不用看它的API,經過錄制來熟悉它的API。框架

右側Airtest窗口以及API,點擊右上角錄製按鈕,而後,就能夠在映射的Android模擬器界面上點點點了。編輯器

如下是我點點點,生成的腳本。ide

過程很是簡單,點擊桌面上的計算器圖標,打開編輯器輸入1+1= ,而後,點擊工具欄上的 「運行」按鈕,就能夠回放了。工具

這種腳本更適合遊戲,由於遊戲界面很難定位,圖片識別(截圖)的方式確實是不錯的選擇。


Poco

Poco是另一種形式的腳本,它與通常的自動化工具同樣,經過元素自己的屬性來定位元素,而且它一樣支持錄製。

點擊右上角第一個的錄製按鈕。而後,繼續在android映射的界面上點點點。

由於腳本里面沒截圖,我就單獨拿出來了。

__author__ = "fnngj"

from poco.drivers.android.uiautomation import AndroidUiautomationPoco
poco = AndroidUiautomationPoco(use_airtest_input=True, screenshot_each_action=False)

poco("計算器").click()
poco("com.android.calculator2:id/digit_1").click()
poco("com.android.calculator2:id/op_add").click()
poco("com.android.calculator2:id/digit_1").click()
poco("com.android.calculator2:id/eq").click()

從poco的API來看比appium更爲簡潔。

若是你要作的是非遊戲的APP的話,poco應該是咱們後面學習的重點。這樣的代碼無論是和單元測試框架結合仍是使用PO設計模式都是沒有問題的。

並且,一樣提供元素的屬性展現,又有錄製功能加持,在開發效率上應該會提升很多。

若是,你恰好又會Python,那麼這將是一個不錯的選擇。

相關文章
相關標籤/搜索