adb測試記憶體

2021-08-28 02:43:52 字數 1897 閱讀 1179

# coding:utf-8

import subprocess

import time

import datetime

'''adb shell dumpsys meminfo | find "com.android.settings"

'''# 設定結果儲存路徑

csv_path = 'd:/autotest/meminfo.csv'

# 需要測試的包

packagename = 'com.tcl.eshow'

# 測試次數

times = 100000000

# 測試時間間隔,單位秒

interval = 1

# 執行的命令

cmd = 'adb shell dumpsys meminfo |find "' + packagename + '"'

for i in range(times):

proc = subprocess.popen(cmd, stdout=subprocess.pipe, stderr=subprocess.stdout, shell=true)

# 以換行分割成list

result = proc.communicate()[0].split('\n')

# print(result)

# 統計所有程序記憶體大小,格式[程序1的記憶體,程序2的記憶體,程序3的記憶體,......]

sizes =

# 統計單個程序占用記憶體大小

size = ''

# 統計某個應用實際記憶體大小(乙個應用包含多乙個或者乙個以上程序的總和)

memsize = 0

# 去掉重複的內容

result_copy =

# 去掉重複的內容

for mem in result:

# 去掉空格

mem = mem.replace(' ', '')

# 如果men不在result_copy裡面,且men不等於''

if not mem in result_copy and not mem == '':

# print(result_copy)

for mem in result_copy:

# 乙個乙個讀取字元

for char in mem:

# 如果是數字就拼接起來

if char.isdigit():

size = size + char

else:

# 不是數字,拼接完畢,把size加入到sizes,初始化size

size = ''

break

if sizes == :

print(u'沒有獲取到記憶體資訊')

else:

# 每個size相加

for size in sizes:

memsize = memsize + int(size)

# 獲取當前時間

ltime = datetime.datetime.now().strftime('%y-%m-%d %h:%m:%s')

# ltime=time.strftime('%y-%m-%d %h:%m:%s',time.localtime(time.time()))

with open(csv_path, 'a') as csvf:

# csv檔案加逗號,可以換列輸出

csvf.write(ltime + ',' + str(memsize))

csvf.write('\n')

print(ltime)

print(ltime + u' 第' + str(i + 1) + u'次:' + str(memsize))

# 間隔10秒

time.sleep(interval)

adb 測試命令

模擬器,不用還不行,改一行 就真機測試也不實際,是吧。adb這個指令 要說簡單,網上一大把,但是一些細節總是不注意,可能大家不用吧,或者ddms直接搞,但是我很喜歡命令,覺得ide環境找啊找好頭疼 adb push 簡單說把乙個電腦檔案弄到模擬器上 adb push home hello somef...

adb測試流量

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

ADB移動端測試

一 對於手機端測試,按照平台來分,分為android和ios兩大主流系統。對於ios和android,二者有區別,android開源導致碎片化比較嚴重,手機品牌眾多,系統版本各異,解析度不統一,主流手機型號上千。無法保證應用 遊戲對於所有手機的適配相容。bug比較多,而ios通常bug會少一些。an...