# 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...