效能測試 流量測試

2022-08-24 11:39:15 字數 2806 閱讀 3875

原文資料:

流量篇最近在研究ios 的效能測試,時間太緊沒來得及發帖,加通宵擠出時間給大家分享一點東西,希望對大家有所幫助!

android 2.2之前

對於android2.2 的流量 版本以前的系統的流量資訊都存放在 proc/net/dev(或者 proc/self/net/dev)檔案下,讀取檔案然後對其進行解析就行了。讀取某乙個應用的流量,則讀取proc/uid_stat/uid /tcp_rcv 檔案進行解析(注:模擬器下不存在這個目錄)。如需檢視某個應用的流量資訊,可以通過以下命令來實現:

adb devices                         列出所有裝置

adb -s 裝置名稱 shell 進入對應的裝置

cd proc 進入裝置的屬性目錄

cd uid_stat 進入 user id 狀態目錄,每個應用程式在安裝的時候系統會為每個應用分配乙個對應的 uid

ls 列出 uid_stat 目錄下所有應用對應的 user id 目錄

cd uid 進入對應應用的 uid 目錄

ls 檢視對應 uid 目錄下的 tcp_rcv 和 tcp_snd 目錄

cat tcp_rcv 檢視該應用接收的資料資訊

cat tcp_snd 檢視該應用傳送的資料資訊

android 2.2之後

我這裡有兩種辦法:

第一種通過pid下面的net/dev

先找到應用的pid

這邊拿到pid:21896 然後在去/proc目錄下的pid/net/dev面可以看到:

小技巧:wlan0這些值如何初始化0 很簡單 你開啟手機飛行模式再關掉就清0了

第二種通過proc/net/xt_qtaguid/stats

在說第二種獲取流量方法之前先給這邊先給大家說下uid

uid的獲取可以在對應的pid下面去檢視status,裡面會查到uid

下面這個方法是通過packagemanager去取:

try  catch (namenotfoundexception e) 

拿到uid後呢繼續:

其中第6和8列為 rx_bytes(接收資料)和tx_bytes(傳輸資料)包含tcp,udp等所有網路流量傳輸的統計。

乙個uid可能對應多個 程序,所以這有兩行流量是累加的就求和就行。

//獲取pid

public static string pid(string packagename) throws ioexception

bufferedreader in = new bufferedreader(new inputstreamreader(

proc.getinputstream()));

stringbuffer stringbuffer = new stringbuffer();

string line = null;

while ((line = in.readline()) != null)

string str1=stringbuffer.tostring();

string str2=str1.substring(str1.indexof(" "+packagename)-46,str1.indexof(" "+packagename));

string str3 =str2.substring(0,7);

str3 = str3.trim();

pid=str3;

} catch (interruptedexception e) finally catch (exception e2)

}return pid;

}

public static double getflow(string packagename) throws ioexception {

double flowsize=0;

string pid=pid(packagename);

try{

runtime runtime = runtime.getruntime();

process proc = runtime.exec("adb shell cat /proc/"+pid+"/net/dev");

try {

if (

安卓效能測試(五) 耗流量

流量測試,我們可以在低 中 高三種負荷情況下進行測試 低負荷 應用切到後台或鎖屏狀態 中負荷 應用正常操作 那麼針對三種負荷,我們可以選擇如下場景進行測試 流量測試的方法一般有3類 讀取手機的檔案來獲取流量,需要自己寫指令碼 使用tcpdump wireshark相結合的方法 使用第三方工具 各種工...

效能測試 效能測試步驟

針對此次庫內作業效能測試,梳理一下期間的工作流程 梳理已有的介面指令碼,確認需要做效能測試的幾個介面,即使用率高,對效能有要求的幾個主要介面。結合頁面的操作,和確認的介面,梳理具體的業務邏輯 同時,請開發人員部署了測試環境。測試環境的伺服器指標,盡量和生產環境一致。部署的時候,負載均衡等情況也盡量和...

adb測試流量

coding utf 8 import subprocess import time 獲取乙個裝置裡面的所有包和流量 如果wifi和資料流量都為0,則不展示 adb shell dumpsys package packages findstr c userid c package adb shell...