您當前的位置:首頁 > 舞蹈

乾貨|手把手教你做app自動化測試

作者:由 周緒龍 發表于 舞蹈時間:2020-10-25

什麼是App自動化?為什麼要做App自動化?

App自動化是指給 Android或iOS上的軟體應用程式做的自動化測試。

手工測試和自動化測試的對比如下:

手工測試優勢:

不可替代、發現更多bug、包含了人的想象力與理解力。

注意,不是所有功能都需要自動化。

自動化測試優勢:

可重複、效率高,增加軟體信任度。

執行自動化測試可以讓測試同事有更多的精力來關注複雜場景,做更多更深層次的測試。

風險分析

自動化測試的主要風險分析如下:

(1)測試用例覆蓋率(覆蓋率決定測試效率,選擇合適用例,應約佔功能用例集的20%~50%)

(2)測試結果準確度(準確度決定了測試有效性,應儘可能減少誤報)。

(3)自動化程式碼維護(維護決定了成本,資料關鍵字驅動自動化框架,程式碼應儘可能最佳化和少改動)。

(4)版本開發和測試時間進度(當專案需求和功能較為穩定時,建議用自動化)。

(5)開發對控制元件元素增修改的程度(需開發人員儘可能地用name元素,並且和UI設計一致,修改變動程度不大,測試人員可根據提供的元素提前介入,開發自動化指令碼)。

App原始碼許可權控制,iOS上測試需要原始碼。實際測試只需SVN或者git下載許可權,而不需要上傳許可權。防止改動SVN或者git 上的原始碼。

技術框架

1、自動化學習過程

自動化測試環境的部署——>自動化測試指令碼開發能力——->自動化測試框架研發——->手機自動化持續整合

2、andorid 系統架構圖

乾貨|手把手教你做app自動化測試

3、手機自動化測試環境

安裝Appium——>安裝手機模擬器——>安裝selenium和appium的客戶端——>安裝被測試app

4、

Appium 軟體架構

乾貨|手把手教你做app自動化測試

5、

常用的定位技術和工具

乾貨|手把手教你做app自動化測試

6、自動化測試指令碼技術

乾貨|手把手教你做app自動化測試

7、技術框架結構圖

乾貨|手把手教你做app自動化測試

APP自動化測試流程

1、環境的安裝

1.1 環境的準備

jdk1。6以上

python2。7以上

android-sdk

Appium desktop 安裝

1.2 jdk 安裝

下載JDK後傻瓜式安裝,

注意:不要有中文路徑和空格

配置環境變數:

右擊“我的電腦”-->"屬性"-->"高階系統設定"-->"高階"-->"環境變數"

在系統變數裡新建“JAVA_HOME”變數,變數值為:C:\Program Files\Java\jdk1。8。0_60(根據自己的jdk的安裝路徑填寫)

在系統變數裡新建“classpath”變數,變數值為:。;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools。jar

(注意最前面有一點)

找到path變數(已存在不用新建)新增變數值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

1.3 python 安裝

傻瓜式安裝

配置環境變數

:電腦屬性系統變數新增python根目錄

1.4 安裝Android的測試開發環境

Android-SDK的安裝:

SDK manager。exe 雙擊開啟下載

乾貨|手把手教你做app自動化測試

2.android-sdk環境變數的配置

具體操作步驟:

新建ANDROID_HOME

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

在Path 變數中加入路徑

%ANDROID_HOME%\platform-tools 和 %ANDROID_HOME%\tools

3.檢查adb 環境變數

乾貨|手把手教你做app自動化測試

4.連線手機

如果是真機,手機插上USB連線電腦,開啟開發者模式,cmd輸入adb devices

如果是模擬器,需要輸入adb connect 127。0。0。1:62001或者52001連線,然後再輸入adb devices

Appium desktop 安裝

下載地址:

https://

github。com/appium/appiu

m-desktop/releases/tag/v1。3。1

傻瓜式安裝 注意:一定要選擇所有使用者許可權要不然用不了

UiAutomator2

2、 API指令碼

2.1 如何獲取APP啟動的AppPackage和AppActivity

透過appt獲取切換到aapt所在的目錄,執行aapt dump

(aapt是sdk自帶的一個工具,在sdk\builds-tools\目錄下)使用命令aapt dump badging “D:\ jinritoutiao_7500。apk”執行後的結果中以下兩行分別是應用包名package和入口activity名稱

package: name=’ com。ss。android。article。news’

launchable-activity: name=‘com。ss。android。article。news。activity。LaunchActivity’

2. 透過 adb shell am start

com。ss。android。article。news/com。ss。android。article。news。activity。MainActivity

來判斷啟動的app 是否正確

2.2 啟動appium

乾貨|手把手教你做app自動化測試

乾貨|手把手教你做app自動化測試

2.3 寫指令碼

1.platformName:

這裡是 android 的 apk

2.deviceName:

手機裝置名稱,透過 adb devices 檢視

3.platformVersion:

android 系統的版本號

4.appPackage:

apk 包名

5.appActivity:

apk 的 launcherActivity

乾貨|手把手教你做app自動化測試

2.4生成測試報告

乾貨|手把手教你做app自動化測試

推薦閱讀:

周緒龍:乾貨|APP的安全性測試指南——測試工具Drozer

周緒龍:乾貨|如何用Postman做整合測試

周緒龍:乾貨必看!想入門Web測試,看這邊!!!

周緒龍:乾貨|幾幅圖學會Jmeter效能測試型別

福利福利:

乾貨|手把手教你做app自動化測試

更多技術乾貨敬請關注蟲師學院官方知乎機構號:

@蟲師學院 @周緒龍

軟體測試的魅力何在?您為什麼選擇測試一行而不做開發?

我想問一下,軟體測試要學會什麼才能拿6k以上的工資?

標簽: 測試  自動化  Android  安裝  HOME%