【Appium】從零搭建Android自動化測試環境


一、Appium簡介

Appium是用於本機, 混合和移動Web應用程序的 開源測試自動化框架。它使用WebDriver協議驅動iOS,Android和Windows應用程序

WebDriver參考

Appium支持的開發平臺

操作系統 開發平臺
IOS XCode w/ Command Line Tools
Android Mac OSX or Windows or Linux and Android SDK ≥ 16

Appium資源

二、測試環境

在這裏插入圖片描述
Appium運行測試環境包括

  • Appium-Client
  • Appium-Server
  • 移動設備

1. Appium-Client

客戶端,開發者可以選擇自己擅長的開發語言來寫測試代碼,我選擇的是C#,所以會在C#項目的Nuget包裏引用Appium

Appium.WebDriver

在這裏插入圖片描述

2. Appium-Server

Appium-Server通過接受Client傳遞過來的指令,將指令發送給App,驅動App做出相應動作。Appium Desktop內置Appium-Server,並且支持控件識別,錄製動作等功能,這裏選擇自己電腦支持的安裝包

Appium-Desktop

在這裏插入圖片描述

3. 移動設備

這裏我們選擇模擬器來代替真實移動設備,由於我的機器是Window系統,暫時只考慮使用安卓模擬器,我選擇的是模擬器是原生的Android Emulator,關於如何配置,我的開發IDE是Visual Studio 2019, 其移動開發技術Xamarin內置了Android的一些配置

三、軟件配置

1. Window系統配置

需要在BIOS中開啓虛擬化技術

配置Win10解決VMware Intel VT-x虛擬化問題

如果配置成功,任務管理器會出現虛擬化已啓用
在這裏插入圖片描述
需要開啓模擬器硬件加速設置

通過硬件加速提高仿真器性能 (Hyper-V & HAXM)

2. Android Emulator配置

2.1 移動開發組件安裝

我使用Visual Studio 2019來配置Android Emulator,首先需要確保Visual Studio 2019已經安裝移動開發組件,Visual Studio Installer -> Mobile development with .Net
在這裏插入圖片描述

2.1 Android SDK安裝

進入Visual Studio 2019,打開Android選項,首先配置Android SDK
在這裏插入圖片描述
選擇Android版本以及SDK Build Tools
在這裏插入圖片描述
安裝好之後所有工具都在Android SDK目錄

C:\Program Files (x86)\Android\android-sdk

接下來,我們可以新建虛擬設備,打開Android Device Manager,在裏面新建自己需要的設備,我們可以在這裏啓動虛擬設備
在這裏插入圖片描述
在這裏插入圖片描述

3. Appium Desktop配置

3.1 環境變量配置

首先需要編輯配置文件設置環境變量
在這裏插入圖片描述
配置Android SDKJava SDK變量

  1. ANDROID_HOME : Anroid SDK的安裝目錄,在VS配置Android Emulator時已安裝
  2. JAVA_HOME : Java SDK的安裝目錄,本文沒有提到Java SDK的安裝,需自己安裝

3.2 Desired Capbilities配置

配置好環境變量後啓動服務,然後需要新建一個Inspector Session
在這裏插入圖片描述
Desired Capbilities選擇,對於Android而言有6個必需的參數,Appium知道以下參數才能在虛擬設備中找到某個App
在這裏插入圖片描述

  • platformName : 平臺名,Android
  • platformVersion : Android版本,可以在配置虛擬設備時獲取
  • deviceName :虛擬設備在Window中的地址
  • appPackage : app的包名
  • appActivity : app的Activity名稱
  • automationName : 自動化名稱

關於參數的名稱,可以參考以下資料

Appium-Server與Appium-Desktop的區別

deviceName的獲取: 在Adroid Device Manager裏啓動虛擬設備後,這時虛擬設備在Window中就存在一個地址,這裏使用adb工具獲取該地址, 這裏emulator-5554就是deviceName的值

“C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe” devices

在這裏插入圖片描述
appPackageappActivity的獲取參考以下資料

appium測試之獲取appPackage和appActivity

automationName的設置,之前沒有設置automationName結果一直啓動失敗,後來參考這篇文章需要把automationName設置爲UiAutomator1解決了問題

Python+appium自動化踩坑(二):Original error: The instrumentation process cannot be initialized. Make sure the application under test does not crash and investigate the logcat output.

四、測試案例

1. 啓動Andriod Emulator

首先我們在Visual Stuido 2019Android Device Manager中啓動一個虛擬設備

2. 設置Desired Capbilities

以虛擬設備裏的撥號功能app爲例,我們這樣設置Desired Capbilities(有些參數根據自己的虛擬設備獲取)
在這裏插入圖片描述

3. 啓動Session

啓動後可以看到虛擬設備中的撥號功能app
在這裏插入圖片描述

五、腦圖總結

在這裏插入圖片描述


現在,Appium關於Android的測試環境已經成功搭建,接下就可以進行腳本編寫以及測試了。從零搭建Android測試環境對於一個沒有移動端開發經驗的人來說真的是很困難,好在這句話一直在支持着我,最後也成功解決了問題

只要思想不滑坡,辦法總比困難多。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章