1. 程式人生 > 其它 >【學員乾貨】App常見效能測試點

【學員乾貨】App常見效能測試點

 

 

普遍的apk效能測試,主要是以下七類

1、響應

2、記憶體

3、cpu

4、FPS (app使用的流暢度)

5、GPU過度渲染

6、耗電

7、耗流

(app除了這些效能測試,還有:手機版本號相容性,螢幕解析度相容性,穩定性測試,安全測試等,後續會持續更新… 流量測試同這些一起更新,這裡就不在說明了 )

 

一、響應

軟體的響應時間和響應速度直接影響到使用者的體驗度,如果一個軟體,遲遲載入不出來,會直接影響到軟體的日活、留存。因此對於一個軟體,對響應速度測試是必不可少的。

主要測試點:

1、冷啟動:首次啟動app的時間間隔(只是啟動時間,不包括頁面載入)

2、熱啟動:非首次啟動app的時間間隔(只是啟動時間,不包括頁面載入)

3、完全啟動:從啟動到首頁完全加載出來的時間間隔

4、有網啟動:從發起跳轉,到頁面完全加載出來的時間間隔

5、無網啟動:從發起跳轉,到頁面完全加載出來的時間間隔

(在專案中,主要測試關注點是冷啟動,熱啟動)

 

測試方法:

1、使用adb命令

1) 冷啟動

adb shell am start -W packageName/ActivityName(絕對路徑,首個Activity)

含義:

ThisTime: 該Activity的啟動耗時;

TotalTime: 應用自身啟動耗時, ThisTime+應用application等資源啟動時間;

WaitTime: 系統啟動應用耗時, TotalTime+系統資源啟動時間

2)熱啟動:按back按鍵後再啟動adb命令

測試標準:冷啟動時間不超過1.5s, 熱啟動不超過1s.

3)完全啟動,無網啟動,有網啟動都可以通過charles抓包來獲取啟動的時間

charles是一個很強大的抓包工具,除了擷取請求還能進行單介面壓測,修改請求引數併發出請求,以及模擬無網,弱網,2G,3G,4G等。能解決app的很多專項測試。

限制網路情況需要用到charles的一個功能: Throttle Setting

通過設定網速和抓包,可以獲取啟動時間,但是有一定的誤差。在專案中,一般只需要測試冷啟動,熱啟動便可。

2、使用AndroidStudio的Android Monitor,檢視手機日誌系統輸出

Android Monitor總共有5大模組:logcat, memory, cpu, network,GPU

我們可以通過logcat獲取應用的響應時間(如何使用,記憶體中有介紹)

 

3、程式碼日誌輸入檢視

直接原始碼打日誌,輸入各個位置的耗時操作最為有效,需要原始碼。

4、借用工具,高速相機,但是成本較高。(如下圖:目前專案團隊使用的測試工具)

原理: 通過壓力感應來自動識別起始點,回放圖片判斷結束點,(一般預設手機介面靜止不動為結束點), 鍵盤按S鍵為起始點,按F鍵為結束點。

這裡便不介紹用法了。