python專項測試——性能測試


 經常關注的性能指標:

  • app啟動的耗時;
  • cpu占比
  • 流量消耗
  • 電量消耗
  • 內存消耗
  • 流暢度
  • 過度渲染

一 啟動耗時

1 啟動方式分類:冷啟動—進程首次啟動並加載數據;

                      熱啟動—進程已經啟動但在后台運行的情況下,再次啟動

2 冷/熱啟動app命令:adb shell am start -W -n Package/activity ,會得到一個app啟動的耗時,可以作為參考;

   冷啟動后停止app命令: adb shell am force-stop Package

   熱啟動后停止app命令: adb shell input keyevent 3 

   獲取一個應用的包名?

   輸入命令:adb logcat | grep START , 啟動對應應用,查找 "cmp=……" 字段,包含package/activity

3 自動化腳本的實現:

  method 1: 獲取命令執行時間,作為啟動時間參考值

  method 2:  在命令前后加上時間戳,以差值作為參考值

  具體腳本見PyCharm中。

4 分析:和競品對比;和本產品的不同版本進行對比

二 CPU占比


1 命令查看app的CPU占用: adb shell  dumpsys cpuinfo | grep package

2 自動化腳本實現: 多次運行取平均值

   見PyCharm

3 分析:查看值是否恆定;是否是在當前系統支持下的一個合理范圍內;

 

三 流量消耗

獲取流量命令:

   先獲取進程ID——adb shell ps | grep packagename

   再獲取進程流量——adb shell cat  /proc/pid/net/dev

   Receive: app接收的數據

   Transmit: app發出的請求的數據   

   總流量=  Receive + Transmit ,即為當前app消耗的流量的總值

   對app進行一些測試操作,再次執行獲取流量的命令,然后和和上次統計的流量作差,差值即為測試期間app消耗的流量

2 腳本見Pycharm

3 分析:競品;不同版本

 

四:電量


1 獲取電量的命令:adb shell dumpsys battery

   查看其中的level值,執行一些操作后,在此查看該值,作差。

2 手機與電腦連接,一般默認處於充電狀態,切換到非充電狀態的命令:adb shell dumpsys battery set status 1 

3 腳本測試時間建議:0.5h ~1h上

五:內存

1 獲取內存的命令: adb shell  top

  需要取2個值:VSS——Virtual Set Size   虛擬耗用內存

                     RSS——Resident Set Size 實際使用物理內存

2 腳本

3 虛存和實存獨立分析

六: FPS&過度渲染

1 FPS:frames per second

   過度渲染:屏幕上的某個像素在同一幀的時間內被繪制了多少次

2 FPS監控方法:GPU呈現模式分析

3 過度渲染監控 :顯示GPU過度繪制

 

 

 

 

 

 

   

   

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM