1. 程式人生 > 其它 >2021年四大流行Android手機自動化測試工具,全在這裡了!

2021年四大流行Android手機自動化測試工具,全在這裡了!

Android 自動化測試的工具非常多,但是目前主流使用的就那幾個,我會詳細說明他們各自的情況,你可以根據自己的需要決定使用哪款工具。

Appium

Appium 是目前最主流的移動測試自動化框架,不僅支援 Android 應用,而且適用於 iOS、混合和 Web 應用程式。

它底層完全使用了 Selenium 和 WebDriver 的 API,所以如果你之前有用過 selenium,幾乎不需要額外的學習成本就可以使用 appium。

appium 通過 uiautomator(API 級別 16 或更高)和 Seledroid(API 級別低於 16)支援 Android,但是你不需要具體懂這兩個框架的具體用法,appium 都已經幫你封裝成了統一的使用規則。

Appium 的最大優勢之一是幾乎可以使用任何程式語言(例如 Java、Objective-C、JavaScript、PHP、Ruby、Python 或 C# 等)編寫 Appium 指令碼。

這意味這選擇權在你,你可以使用自己最擅長的程式語言。如果你還熟悉 Selenium,那麼不出意外,你可以在一天之內上手使用。

另外 webdriver 是一個統一的標準,已經提交給了 w3c 組織,你可以基於它的協議做進一步的擴充套件。看看簡單的程式碼:

textFields = driver.find_elements_by_tag_name('textField')assertEqual(textFields[0].get_attribute("value"), "Hello")複製程式碼

Airtest

第二個我要推薦國產之光 Airtest。Airtest 專案是由網易遊戲推出的一款自動化測試框架,專案有幾大元件:

Airtest:是一個跨平臺的、基於影象識別的 UI 自動化測試框架,適用於遊戲和 App,支援平臺有 Windows、Android 和 iOS

Poco:是一款基於 UI 控制元件識別的自動化測試框架,目前支援 Android 原生 app/iOS 原生 app/微信小程式,還有主流的遊戲引擎,也可以在其他引擎中自行接入 poco-sdk 來使用

AirtestIDE:跨平臺的 UI 自動化測試編輯器,內建了 Airtest 和 Poco 的相關外掛功能,能夠使用它快速簡單地編寫 Airtest 和 Poco 程式碼,甚至都可以不寫程式碼。

AirLab:真機自動化雲測試平臺,提供了非常多的手機型號和相容性測試、海外雲真機相容性測試等服務

私有化手機叢集技術方案:從硬體到軟體,提供企業內部私有化手機叢集的解決方案

使用 Airtest 的好處是中文文件健全,對英文不好的同學支援優化。官網也貼心的準備了視訊教學和演示,幫助你快速上手。

Detox

這個框架非常低調,但是你用過一定會愛上它。

Detox 一個非常強的 JavaScript 移動測試框架,它的測試執行非常快速和健壯,因為在測試執行期間不需要外部附加工具來編排和同步。

如果你優先考慮以下因素,你可以直接選用 detox:

使用 JavaScript 程式語言

比其他測試自動化框架更易於除錯

app 是 React Native 開發的,可迅速和 detox 整合

在測試執行方面比 Appium 快

文件比較容易掌握

下面是具體的程式碼,比較典型的程式碼編寫方式:

describe('HelloDetoxTest', () => {

 beforeEach(async () => {

  await device.reloadReactNative();

 });

 it('應該有歡迎螢幕', async () => {

  await expect(element(by .id('welcome'))).toBeVisible();

 });

 it('should show hello Rect after tap', async () => {

  await element(by.id('hello_react')).tap() ;

  await expect(element(by.text('React!!!'))).toBeVisible();

 });

 it('點選後應該顯示螢幕', async () => {

  await element(by.id ('detox_button')).tap();

  await expect(element(by.text('Detox!!!'))).toBeVisible();

 });

});

Espresso

Espresso 是新型的的 Android 測試自動化框架,由 Google 開源,Espresso 的 API體積小、可預測、易於學習。

你可以使用它快速編寫簡潔可靠的 Android UI 測試。

它非常可靠,與 UI 執行緒同步並且速度很快,因為不需要任何睡眠(當應用程式空閒時,測試在同一毫秒內執行)。

而且通過簡單的配置,可以直接整合在 appium 中。