這篇文章主要為大家展示了如何通過python調用adb命令對App進行性能測試,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
“只有客戶發展了,才有我們的生存與發展!”這是創新互聯建站的服務宗旨!把網站當作互聯網產品,產品思維更注重全局思維、需求分析和迭代思維,在網站建設中就是為了建設一個不僅審美在線,而且實用性極高的網站。創新互聯對做網站、網站制作、網站制作、網站開發、網頁設計、網站優化、網絡推廣、探索永無止境。1 監聽啟動activity 信息命令adb shell logcat | grep START 可以查看apk包名和Activity名字
=========啟動時間============
2 冷啟動(第一次啟動)熱啟動(沒有退出,第二次打開)命令 adb shell am start -W -n com.qihoo.appstore/.home.MainActivity
3 停止app命令(冷啟動) adb shell am force-stop com.qihoo.appstore
(熱啟動方式退出) adb shell input keyevent 3
python 來實現方式
1定義App類方法有startApp stopApp getStartTime
2 Manager類 方法 testRunTime(執行單次) run 開啟執行
==============cpu=================
查看cpu數據
adb shell dumpsys cpuinfo | findstr com.qihoo.appstore
注意 window 下必須把grep 換成 findstr
==================內存=========================
第一種
adb shell dumpsys meminfo com.qihoo.appstore
第二種方式
1 執行adb shell top >f:/meminfo.txt 一段時間后
2 再 解讀文件信息
===============流量===================
1獲取當前進程的adb shell ps | findstr com.qihoo.appstore
adb shell cat /proc/pid/net/dev
=================電量======================
執行獲取電量的命令 adb shell dumpsys battery
設置手機進入非充電狀態 adb shell dumpsys battery set status 1
=================幀率===fps===================
adb shell dumpsys gfxinfo com.qihoo.appstore > f:/fps.txt
Draw:表示在Java中創建顯示列表部分中,OnDraw()方法占用的時間。
Process:表示渲染引擎執行顯示列表所花的時間,view越多,時間就越長
Execute:表示把一幀數據發送到屏幕上排版顯示實際花費的時間。其實是實際顯示幀數據的后臺緩存區與前臺緩沖區交換后并將前臺緩沖區的內容顯示到屏幕上的時間。
Draw + Process + Execute = 完整顯示一幀 ,這個時間要小于16ms才能保證每秒60幀。
取得數據后,復制到excel中生成堆積柱狀圖。
補充知識:python調用adb命令進行手機操作
Python中執行cmd命令可以用到os和subprocess兩個模塊。
區別在于os是阻塞式的,subprocess是非阻塞式的,所以一般我們使用subprocess是比較適合的。
接下來我先舉一個查詢連接設備的命令來看看python中怎么樣的寫法。用到的命令為 adb devices。
方式一:
import os
os.system('adb devices') #獲取連接設備
運行結果
List of devices attached
Q8DCGQA6JBQRSAI device
方式二:
import subprocess order='adb devices' #獲取連接設備 pi= subprocess.Popen(order,shell=True,stdout=subprocess.PIPE) print(pi.stdout.read()) #打印結果
當前標題:如何通過python調用adb命令對App進行性能測試-創新互聯
分享地址:http://vcdvsql.cn/article32/ieppc.html
成都網站建設公司_創新互聯,為您提供企業網站制作、定制開發、網站建設、網站策劃、網站制作、全網營銷推廣
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯