测试工具Monitor入门
- 一、如何啟動Monitor
- 二、設備信息顯示區域
- 1.設備信息
- 2.同時連接多個設備
- 3.分析工具開關
- 三、分析工具區域
- 1.Thread(線程相關)
- 2.Heap/Allocation Tracker(內存相關)
- 3.Network Statistics(網絡流量相關)
- 4.File Explorer(文件瀏覽)
- 5.Emulator Control(控制系統打電話和發短信的工具)
- 6.System Information(系統信息)
- 6.1 CPU
- 6.2 PSS(內存)
- 6.3 Frame Render Time(幀渲染時間)
- 四、log顯示區域
?
一、如何啟動Monitor
安裝Android sdk后,設置好環境變量后,直接在終端輸入monitor,即可啟動運行。(若要監聽某app,需要安裝測試版的Debug或release的包)Monitor界面布局如下:
Monitor界面布局
二、設備信息顯示區域
1.設備信息
用數據線將手機與電腦連接成功后,此區域會出現手機設備的信息,包括型號(sm_n9002)/設備識別碼(b3e2b356)/手機系統版本(5.1.1)/debug狀態的設備還可以看到當前運行的進程信息(com.yx or com.yx:push or com.yx:gt)
2.同時連接多個設備
當連接多臺手機時,會出現個設備信息,此時,需要監聽哪個就選中相應設備即可。
3.分析工具開關
在設備信息的上面一欄有一些分析工具的開關,當選中某個進程信息時,開關才被點亮,點擊右側三角號可以彈出更多開關選項。
Debug Process:調試程序。
Update Heap :更新堆,監聽進程的堆分配信息。
Dump HPROF file:導出.hprof文件(可使用MAT的視圖工具分析內存)。
Cause GC:同Heap視圖中的cause GC按鈕,表示請求一次gc操作。
Update Threads :更新線程信息。
Start Method Profiling :開始方法分析(不常用)
Stop Process :強殺某個進程。
Screen Capture:屏幕截圖。
Dump View Hierarchy for UI Automator :與Android sdk 文件夾tools下的uiautomatorviewer功能一致。
Capture System Wide Trace :若頁面卡頓時,可以使用這個工具,點擊后在彈窗中設置要記錄的信息,開始操作app,然后會生成trace.html文件可供分析。
三、分析工具區域
1.Thread(線程相關)
utime 和stime代表了線程在瞬間運行用戶代碼(utime)和系統代碼(STIME)所花的總時間,星號表示守護線程。
2.Heap/Allocation Tracker(內存相關)
左側部分:左上綠色的Heap按鈕即為Heap工具的開關,左下選中了com.yx,表示監聽的進程是有信,有綠色的Heap表示正在監聽Heap信息;
右側部分:紅色框中的數據含義分別為:Heap Size = 占用內存的總大小;Allocated = 已分配使用的內存空間;Free = 剩余空間大小;Used = 使用率。
? 綠色框中的數據表示不同的對象占用的內存大小,是紅色框的的詳細內存分配(點擊標題欄可以按大小排序)。
? 黃色款中的數據表示的是已經選中的某個對象的內存詳細數據例如上圖中的class object。
OOM:使用過程中重點關注Total Size比較大的對象,上圖中的class object占用的Total Size最大,若Total Size超過了系統預分配的內存空間,app的進程就會被kill,前端表現就是“有信停止運行”。
Allocation Tracker(分配跟蹤器)視圖中顯示了有關分配的更深層細節。點擊“Start Tracking(開始跟蹤)”,在應用中執行某個操作,然后點擊“Get Allocations(獲得分配)”。即可顯示出這一操作過程中的內存分配信息。包括:分配順序(Alloc Order)/分配大小(Allocation Size)/ 被分配的類名(Allocated Class)/被分配的線程ID( Thread id)被分配的位置( Allocated in)
3.Network Statistics(網絡流量相關)
4.File Explorer(文件瀏覽)
5.Emulator Control(控制系統打電話和發短信的工具)
6.System Information(系統信息)
注:此工具下每次選中統計指標(cpu/pss/Frame)后,都要點擊按鈕[Update from Device]后查看最新數據。
6.1 CPU
6.2 PSS(內存)
6.3 Frame Render Time(幀渲染時間)
上圖中有三個參數,Draw /Process /Execute 表示頁面渲染的三個不同階段,一般要求這三步每一步都不超過16ms,用戶使用過程中才不會卡頓。
若某個頁面出現卡頓,可以通過這個工具來觀察數據。
四、log顯示區域
Level:log級別,V-Verbose,D-Debug,I-Info,W-Warn,E-Error,A-Assert
Time:log時間,精確到ms。
Application:log對應的進程,例如有信: com.yx;有信個推:com.yx:gt;有信長鏈接:com.yx:push。
Tag:開發在打log時打上的標簽,例如:TcpRequest/YxCalling/HttpRequest/YxCommon。
test:log的具體內容。
注:log區域的不同顏色代表不同級別。Error-紅色;Info-綠色;Debug-藍色,(一般選中info以上的就可滿足咱們的需求);
可以根據以上信息根據需要設置Filter。
總結
以上是生活随笔為你收集整理的测试工具Monitor入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二进制数转整数、整数转二进制数、二进制数
- 下一篇: Win10 文件夹删不掉,提示需要来自X