手機軟件測試(App性能測試以及測試方法技巧)

時間:2024-10-26 17:27:59 閱讀:1

App功能測試以及測試辦法本事

功能專項我們眷注哪些:

1.眷注資源斲喪(CPU、內存、流量、功耗)

2.啟動耗時(冷啟、熱啟),(這個也是很多云測時用到的一個目標)

3.主要頁面加載時間

4.內存泄漏、發抖、卡頓、頁面渲染(FPS)

今天我也只總結資源斲喪這塊,先談談CPU

廣泛的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獲取使用的呼應時間(怎樣使用,內存中有先容)

cpu檢測我們要分3種情況:

1.在空閑時間的斲喪,基本沒大使用使用cpu

2.在運轉一些使用的情況下,cpu已占50%的情況下,察看使用步驟占用cpu的情況

3.在高負荷的情況下看CPU的體現,我界說這個高負荷,cpu占用應是在80%以上

1.1 怎樣查察CPU的使用值

使用下令:adb shell dumpsys cpuinfo apk包名

從上圖我們可以看出:6.4%是針對這個CPU的占用率是6.4%,標紅的場合5.2%占用率是用戶使用的,1.1是內核的占用率,這個數只是針對1核來說,

成績:如今手機都是多核的了,那如此的值也不會太準確,那怎樣做?

履歷:尋常這種取值的,我在測試的時分,會多收羅多次,求均勻值

外表數據太多了,我們還可以可以用底下這個下令,和top下令,獲取單個數據

adb shell dumpsys cpuinfo |grep packagename

2.內存篇

內存的辦法和cpu相似,我們經過多次收羅,得出內存值,看內存對否特別,那怎樣獲取內存值

怎樣取內存,用下令

1.adb shell dumpsys meminfo

2.adb shell meminfo PID


手機運轉速率就和內存有很大干系,我記得從前的同事可以研討這個內存,還專門建立了一個小組,可見這個水照舊挺深的,并且本人也是知會一點,偏重有幾個目標必要了解:

vss,假造內存 ,每一個使用時一個java假造機,體系會分派一個內存,內存每做一個利用,如此是控制內存的輕重,但是不會大于最大限定,假造內存就就散失掉,我們比力體貼

Rss 物理內存(包含共享庫的內存),使用實踐占用的內存,

pss實踐使用的物理內存(比例分派共享占用內存) 如3個歷程,那么歷程的斲喪就應該是除以3,才表現一個

USS 歷程中單獨占用內存

USS針對某個歷程開頭有內存泄漏的情況,是一個步驟啟動了會產生的假造內存,一旦這個步驟歷程殺掉就會開釋

這個博主我以為講的更好,我只是皮毛罷了
http://blog.csdn.net/bigconvience/article/details/35553983

n內存要多次測試

使用PID的辦法查察:

我們眷注的是:Heap size 是實踐用到的內存 Heap alloc :是實踐分派的值

成績:但是你可以發覺alloc<size 為什么會如此,我如今照舊不是很還能懂,他們一句話表明是說:歷程使用的是假造內存,假造內存使用宏大于物理內存,我如今還不是很懂,

內存我們還可以查察他的單個使用步驟最大的內存限定

adb shell getprop |grep heapgrowthlimit

別的一種辦法:我們還可以使用procrank東西,就可以查察內存值

3.流量

大神說可以使用adb shell cat/proc/“+PID+”/net/dev 的下令來查察流量數

但是我以為如此禁絕確,我獲取流量的辦法是經過抓包的辦法,在一個利用內,看流量中的斲喪,可以借助wireshork這個東西來幫助

約莫以上是他提到的內容和本人的了解

總結:

做功能測試的辦法有兩種:1.競品分析 2.版本比力 這是如今很多公司使用的一種辦法

在說一句:騰訊的GT照舊很好用的,網上可以下載,可以試試



原文鏈接:
https://blog.csdn.net/testManger/article/details/116991049

版權聲明:本文來自互聯網整理發布,如有侵權,聯系刪除

原文鏈接:http://www.freetextsend.comhttp://www.freetextsend.com/qingganjiaoliu/54077.html


Copyright ? 2021-2022 All Rights Reserved 備案編號:閩ICP備2023009674號 網站地圖 聯系:dhh0407@outlook.com

www.成人网