詳解移動應(yīng)用測試神器PerfDog
PerfDog介紹:
移動全平臺iOS/Android性能測試、分析工具平臺??焖俣ㄎ环治鲂阅軉栴},提升APP應(yīng)用及游戲性能和品質(zhì)。手機(jī)無需ROOT/越獄,手機(jī)硬件、游戲及應(yīng)用APP也無需做任何修改,極簡化即插即用。PerfDog支持移動平臺所有應(yīng)用程序(游戲、APP應(yīng)用、瀏覽器、小程序、小游戲、H5、后臺系統(tǒng)進(jìn)程等)、Android模擬器、云真機(jī)等性能測試。支持APP多進(jìn)程測試(如Android多子進(jìn)程及iOS擴(kuò)展進(jìn)程APP Extension)。Windows & Mac OS X平臺PerfDog桌面應(yīng)用程序版本都支持對iOS和Android設(shè)備進(jìn)行測試。PC上PerfDog可多開,單PC可同時(shí)測試多臺手機(jī)。
安裝及運(yùn)行:
登錄PerfDog官網(wǎng)https://perfdog.qq.com/,根據(jù)您的PC平臺選擇想要下載的桌面應(yīng)用程序。
手機(jī)即插即用,無需任何設(shè)置及安裝,使用非常簡單,但手機(jī)屏幕上沒有實(shí)時(shí)性能數(shù)據(jù)顯示。
b.安裝模式(重點(diǎn)介紹):
需要在手機(jī)上自動安裝PerfDog.apk,手機(jī)屏幕上有實(shí)時(shí)性能數(shù)據(jù)顯示(允許USB應(yīng)用安裝和PerfDog懸浮窗管理權(quán)限),啟動PC版PerfDog.exe,則會在手機(jī)上自動PUSH安裝PerfDog.apk
PerfDog主界面介紹
設(shè)備連接到PC后,在PerfDog中有兩種測試模式,USB模式和WIFI模式,顯示如下:

USB模式測試:
USB連線后,在設(shè)備列表選擇USB圖標(biāo)設(shè)備進(jìn)行USB模式測試
WIFI模式測試(測試功率):
只能在WIFI模式測試功率等信息。USB連線后,在設(shè)備列表選擇WIFI圖標(biāo)設(shè)備進(jìn)行WIFI模式測試。WIFI檢測連接成功后,拔掉USB連接線。
備注:
需要PC和被測手機(jī)連接同一WIFI,WIFI檢測連接成功后,拔掉被測手機(jī)USB線USB;
USB模式測試功率無任何意義,會充電;
一般公司W(wǎng)IFI可能做了安全策略限制,導(dǎo)致iOS平臺在公司W(wǎng)IFI下無法使用;
選擇測試的游戲或者應(yīng)用就可以進(jìn)行測試了,如下圖所示:

對于連接好的設(shè)備,主界面右下角會顯示這個設(shè)備的相關(guān)資料,包括平臺型號、Android 版本、內(nèi)存等等。

右側(cè)是對android設(shè)備中的FPS、CPU以及內(nèi)存參數(shù)的實(shí)時(shí)監(jiān)控
點(diǎn)擊右下角的+號,可以添加要監(jiān)控的參數(shù),包括FPS\CPU\Memory和Network,如下圖所示:

在默認(rèn)狀態(tài)下,PerfDog 不會主動記錄數(shù)據(jù),如果希望記錄并導(dǎo)出,可以點(diǎn)擊主界面右上角的播放按鈕,此時(shí) PerfDog 會開始記錄數(shù)據(jù),完成之后可以選擇以 Excel 文件形式存于本地便于處理。
監(jiān)控參數(shù)解釋
ScreenShot(只支持USB模式,注:部分機(jī)型截圖影響性能)
FPS(1秒內(nèi)游戲畫面或者應(yīng)用界面真實(shí)平均刷新次數(shù),俗稱幀率/FPS)
1) Avg(FPS):平均幀率(一段時(shí)間內(nèi)平均FPS)
2) Var(FPS):幀率方差(一段時(shí)間內(nèi)FPS方差)
3) Drop(FPS):降幀次數(shù)(平均每小時(shí)相鄰兩個FPS點(diǎn)下降大于8幀的次數(shù))
InterFrame(部分機(jī)型具有動態(tài)補(bǔ)幀/插幀技術(shù),此參數(shù)可真實(shí)反映1秒內(nèi)插入的幀數(shù))
Jank(1S內(nèi)卡頓次數(shù)。解釋說明如iOS平臺說明)
1) BigJank:1s內(nèi)嚴(yán)重卡頓次數(shù)
2) Jank(/10分鐘):平均每10分鐘卡頓次數(shù)。
3) BigJank(/10分鐘):平均每10分鐘嚴(yán)重卡頓次數(shù)
Stutter(測試過程中,卡頓時(shí)長的占比)
FTime(上下幀畫面顯示時(shí)間間隔,即認(rèn)為幀耗時(shí))
1) Avg(FTime):平均幀耗時(shí)
2)Delta(FTime):增量耗時(shí)(平均每小時(shí)兩幀之間時(shí)間差>100ms的次數(shù))
CPU Usage(傳統(tǒng)CPU利用率,也叫未規(guī)范化CPU利用率,TotalCPU表示整機(jī)未規(guī)范化CPU使用率,AppCPU表示進(jìn)程未規(guī)范化CPU使用率。
CPU Usage (Normalized)(規(guī)范化CPU利用率,TotalCPU表示整機(jī)規(guī)范化CPU使用率,AppCPU表示進(jìn)程規(guī)范化CPU使用率。
CPU Clock(各個CPU核心的未規(guī)范化頻率和未規(guī)范化使用率)
Memory (PSS Memory,統(tǒng)計(jì)結(jié)果和Android Java API標(biāo)準(zhǔn)結(jié)果一致,與Meminfo也一致。
Swap Memory (Swap Memory,部分設(shè)備支持Swap功能,在啟用Swap功能后,系統(tǒng)會對PSS內(nèi)存進(jìn)行壓縮,Swap增加,PSS會相應(yīng)減少,由于壓縮會占用CPU資源,同時(shí)相應(yīng)會導(dǎo)致FPS降低)
Virtual Memory(VSS)
Available Memory(整機(jī)可用剩余內(nèi)存)
Memory Detail(NativePSS、GFX、GL、JavaHeap、Unknown)
備注:在極限測試情況下,例如開啟游戲超高幀率,建議不要勾選收集Memory Usage和Memory Detail,因?yàn)椴糠謾C(jī)型會有性能損耗。
GPU Usage(目前僅支持部分手機(jī))。注:Top Android GPU測試機(jī)型,請參考:
https://perfdog.qq.com/article_detail?id=10101&issue_id=0&plat_id=1
GPU Frequency(目前僅支持部分手機(jī))。
Mali GPU Utilization(僅支持Mali芯片GPU)注:支持的GPU列表,請參考:
https://perfdog.qq.com/article_detail?id=10055&issue_id=0&plat_id=1
1)Non-fragment:非片段著色器(頂點(diǎn)著色器,細(xì)分著色器,計(jì)算著色器)耗費(fèi)的GPU時(shí)間占渲染耗費(fèi)的GPU時(shí)間的比例。
2) Fragment:片段著色器耗費(fèi)的GPU時(shí)間占渲染耗費(fèi)的GPU時(shí)間的比例。
Mali Memory & Bus Bandwidth(僅支持Mali芯片GPU)
1) L2Load/Store:Load/Store單元讀取L2內(nèi)存的實(shí)際帶寬 (包括頂點(diǎn)緩存,原子,圖像數(shù)據(jù))。
2) L2Texture:Texture單元讀取L2內(nèi)存的實(shí)際帶寬 (紋理采樣)。
3) Bus Read:定義GPU到DRAM或者GPU外部的系統(tǒng)內(nèi)存的實(shí)際讀帶寬。
4) Bus Write:定義GPU到DRAM或者GPU外部的系統(tǒng)內(nèi)存的實(shí)際寫帶寬。
Mali Pixels Info(僅支持Mali芯片GPU)
1) OverDraw:表示每個像素由多少個片段分層組成,通常用于表示像素被重復(fù)繪制的次數(shù)。
2) PixelsThroughput:表示每個被渲染的像素耗費(fèi)的GPU的時(shí)鐘的數(shù)量。
注:更多GPU信息說明,請參考:
https://perfdog.qq.com/article_detail?id=10161&issue_id=0&plat_id=1
Network(Recv/Send,測試目標(biāo)進(jìn)程流量)(注:USB/WiFi測試模式下均為APP數(shù)據(jù))
CTemp(CPU溫度)
Battery Power(僅WIFI模式,Current電流、Voltage電壓、Power功耗)(注:與儀器測試誤差<3%左右)。注1:Sum(Battery)是耗電量。注2:對于已經(jīng)兼容的雙電機(jī)型,可參考:
https://perfdog.qq.com/article_detail?id=10047&issue_id=0&plat_id=1
未兼容設(shè)備可以電流x2進(jìn)行容錯。
Log日志采集(WIFI模式下,不支持Log收集)