python测试app性能_App性能测试
App性能測試
目前App測試招聘的越來越多,各種應(yīng)用、游戲都逐步從pc端向App端遷移,薪水也是與日俱增,未來App應(yīng)用的市場占有量將遠(yuǎn)遠(yuǎn)超越pc應(yīng)用,可見這是一個(gè)很好的發(fā)展方向。廢話不多說,下面直奔主題。App性能測試分客戶端和服務(wù)端,服務(wù)端的性能可以通過接口或者web網(wǎng)頁模擬用戶輸入進(jìn)行測試,和普通的PC端性能測試方法一樣;客戶端性能需要借助一些專門的工具來測試,App性能的關(guān)注點(diǎn)主要有耗電量、耗流量、啟動(dòng)退出耗時(shí)、響應(yīng)時(shí)延、流暢度、crash率、卡頓、cpu內(nèi)存等,下面介紹下網(wǎng)上搜集的一些App測試工具:
Android
痛點(diǎn)
工具名
推薦原因
工具類別
落地優(yōu)先級(jí)
落地成本
卡頓
Chrome for android開源性能測試工具(surface_stats.py)
里面已經(jīng)涵蓋了FPS和janky采集的方法,用python寫的命令行,簡單直接地跟自動(dòng)化測試結(jié)合。
發(fā)現(xiàn)
P0
低
卡上報(bào)(AnimationPerfMon.java)
在空間落地卡上報(bào),跟處理crash一樣,通過堆??焖俣ㄎ唤鉀Q問題, 補(bǔ)充ANR的缺失
發(fā)現(xiàn)+定位
P0
中
聽云/OneAPM
基于UIThread/主線程的監(jiān)控,都有不錯(cuò)的卡頓的發(fā)現(xiàn)能力。但是因?yàn)闆]有獲取堆棧,而只有簡單的方法名和activity,所以對(duì)于復(fù)雜的軟件定位稍微困難。
發(fā)現(xiàn)+定位(弱)
P1
低
Fresco
通過內(nèi)存緩存的優(yōu)化達(dá)到流暢的圖片及列表展示性能
解決
P1
低
Realm
通過更優(yōu)秀的I/O性能,降低APP對(duì)持久化數(shù)據(jù)讀寫的損耗,從而提升交互性能??商娲鷖qlite。
解決
P1
中
閃退
LeakCanary
高效率發(fā)現(xiàn)大部分內(nèi)存泄漏導(dǎo)致的OOM。
發(fā)現(xiàn)+定位
P0
低
Bugly/聽云/OneAPM/Testin
CRASH監(jiān)控的能力大同小異,都能對(duì)數(shù)據(jù)上報(bào)的統(tǒng)計(jì)分析,清晰現(xiàn)網(wǎng)情況,用戶痛點(diǎn)。但我會(huì)推薦騰訊的BUGLY, 因?yàn)锳NR, CRASH都能提供比較足夠的信息定位問題,另外,因?yàn)槭球v訊的。
發(fā)現(xiàn)+定位+反饋上報(bào)
P0
低
Testin
兼容性/穩(wěn)定性測試?yán)?#xff0c;關(guān)鍵是機(jī)器的量夠!
發(fā)現(xiàn)+定位
P0
低
待機(jī)時(shí)間短
Chkbugreport
從用戶手機(jī)中提取BUGREPORT。通過這個(gè)工具是可以分析簡單的耗電問題,如sensor或攝像頭沒有關(guān)閉,wakelock的問題。
發(fā)現(xiàn)+定位
P0
中
iOS
痛點(diǎn)指標(biāo)
工具名
推薦原因
工具類別
落地優(yōu)先級(jí)
落地成本
卡頓
FastImage
通過節(jié)省decode的耗時(shí)等方法,提升圖片及圖片列表的展示性能
解決
P1
低
Realm
通過更優(yōu)秀的I/O性能,降低APP對(duì)持久化數(shù)據(jù)讀寫的損耗,從而提升交互性能??商娲鷆oredata,userdefault,sqlite。
解決
P1
中
MGWatchdog
實(shí)現(xiàn)類似ANR的機(jī)制,主要是要跟上報(bào)結(jié)合
發(fā)現(xiàn)+定位
P0
低
閃退
Infer
解決因內(nèi)存泄漏導(dǎo)致的內(nèi)存耗盡導(dǎo)致的閃退。能掃描簡單的循環(huán)引用導(dǎo)致的內(nèi)存泄漏。
發(fā)現(xiàn)+定位
P0
低
Bugly/聽云/OneAPM/Testin
CRASH監(jiān)控的能力大同小異,都能對(duì)數(shù)據(jù)上報(bào)的統(tǒng)計(jì)分析,清晰現(xiàn)網(wǎng)情況,用戶痛點(diǎn)。但我會(huì)推薦騰訊的BUGLY, 因?yàn)锳NR, CRASH都能提供比較足夠的信息定位問題,另外,因?yàn)槭球v訊的。
發(fā)現(xiàn)+定位+反饋上報(bào)
P0
低
待機(jī)時(shí)間短
iOSDiagnostics
可以獲取一些耗電的模塊的信息,如果可以融合到數(shù)據(jù)上報(bào)中的話就更好了。
發(fā)現(xiàn)+定位
P0
中
通用
痛點(diǎn)指標(biāo)
工具名
推薦原因
工具類別
落地優(yōu)先級(jí)
落地成本
流量大/速度慢
BPG(android,類似webp)
BPG(ios)
BPG是H265幀內(nèi)壓縮做圖片壓縮,webp是利用VP8幀內(nèi)壓縮做圖片壓縮。圖片壓縮對(duì)于圖片應(yīng)用來說,除了能提升用戶下載顯示圖片的速度,還能為企業(yè)節(jié)約帶寬成本。
解決
P1
中
Pngquant
利用PNG8壓縮PNG圖片,顏色單一的圖片,效果會(huì)非常明顯。
解決
P0
低
Wireshark
實(shí)用的流量分析工具,包括export http object, I/O graph等等
發(fā)現(xiàn)+定位
P1
中
Emmagee
Android的性能測試組件,里面涵蓋很多性能數(shù)據(jù)獲取的方法,可參考使用。
發(fā)現(xiàn)
P1
低
HAR + PageSpeed
利用tcpdump在手機(jī)上獲取的PCAP, 利用HAR轉(zhuǎn)換PCAP,然后給pagespeed組件分析。
定位
P1
低
弱網(wǎng)兼容性差(ios通用)
ATC
Facebook弱網(wǎng)絡(luò)模擬工具。好處是模擬丟包,抖動(dòng)的時(shí)候比較穩(wěn)定,而且還有HTTP API可以調(diào)用, 方便和自動(dòng)化配合。
發(fā)現(xiàn)
P0
中
SPDY/QUIC
特別是QUIC, 就是為了網(wǎng)絡(luò)抖動(dòng)而設(shè)計(jì)的。
解決
P2
中
OKHTTP
推薦的HTTP組件。性能好,弱網(wǎng)兼容也不錯(cuò)。
解決
P1
低
總結(jié)
以上是生活随笔為你收集整理的python测试app性能_App性能测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何参与一个GitHub开源项目
- 下一篇: 从零开始学习编程语言-Python