手机终端app内存CPU测试
1、Android端内存测试,可以通过adb命令: adb shell dumpsys meminfo <package_name> Dalvik : dalvik使用的内存 重点关注如下几个字段: 2、Android端CPU测试 1)使用android提供的adb shell dumpsys cpuinfo |packagename来获取当前CPU使用率 top命令中每项参数含义: 可以通过Python2脚本输出内存和CPU情况: 使用系统cmd命令,在一定时间内操作应用,实时监控内存CPU变化,最后计算出内存均值和峰值。 # encoding:utf-8 import os import tempfile import time import re def run_once_mem(cmd): # out_file = ‘mem_out.tmp.txt.%s‘ % time.time() # err_file = ‘mem_err.tmp.txt.%s‘ % time.time() # cmd = ‘%(cmd)s 1>>%(out)s 2>>%(err)s‘ % { # ‘cmd‘: cmd,# # ‘out‘: out_file,# ‘err‘: err_file # } # return_code = os.system(cmd) # # f1 = open(out_file) # stdout = f1.read() # f2 = open(err_file) # stderr = f2.read() # f1.close() # f2.close() result = os.popen(cmd) stdout = result.read() return stdout,0 def run_once_cpu(cmd): # out_file = ‘cpu_out.tmp.txt.%s‘ % time.time() # err_file = ‘cpu_err.tmp.txt.%s‘ % time.time() # cmd = ‘%(cmd)s 1>>%(out)s 2>>%(err)s‘ % { # ‘cmd‘: cmd,# ‘out‘: out_file,# ‘err‘: err_file # } # return_code = os.system(cmd) # f1 = open(out_file) # stdout = f1.read() # f2 = open(err_file) # stderr = f2.read() # f1.close() # f2.close() result = os.popen(cmd) stdout = result.read() return stdout,0 i = 0 file_name = ‘res2.txt‘ if os.path.exists(file_name): os.remove(file_name) # f = open(file_name,‘a+‘) summem = countmem = 0 sumcpu = countcpu = 0 time1 = time.time() tempcpu = 0 tempmem = 0 # import os # result = os.popen("ipconfig") # print (result.read()) while i < 250:#根据时间修改 tempsum = 0 i = i + 1 # time.sleep(1) cmdmem = ‘adb shell dumpsys meminfo <package_name>‘#修改自己的应用 outmem,std_errmem,codemem = run_once_mem(cmdmem) cmdcpu = ‘adb shell top -n 1 -d 0.02 |findstr <package_name>‘#修改自己的应用 outcpu,std_err,codecpu = run_once_cpu(cmdcpu) #print(outcpu) print i # print out # print std_err # print code if codemem == 0: # f.write(outmem) mem = re.compile(‘TOTAL[ ]+(d+)[ ]+.*‘) resmem = mem.findall(outmem) print (resmem) if len(resmem): summem += int(resmem[0]) countmem += 1 if (tempmem < int(resmem[0])): tempmem = int(resmem[0]) if codecpu == 0: cpu = re.compile(‘(d+)%.*‘) rescpu = cpu.findall(outcpu) #print rescpu if len(rescpu): for iter in range(len(rescpu)): tempsum = tempsum + float(rescpu[iter]) print (tempsum) sumcpu += tempsum countcpu += 1 if (tempcpu < tempsum): tempcpu = tempsum time2 = time.time() time = time2 - time1 print (‘运行时间:‘ + str(time) + ‘ s‘) print (‘内存均值:‘+str(summem/countmem/1024.0)+‘ MB‘) print (‘内存峰值:‘+str(tempmem/1024.0)+‘ MB‘) print (‘cpu均值:‘+str(sumcpu/countcpu)+‘ %‘) print ‘cpu峰值:‘+str(tempcpu)+‘ %‘ 3、iOS端内存CPU测试 使用工具,手机连接电脑,使用xcode-open developer tool - instrument-activity monitor,选择对应的手机对应的应用。查看下方待测应用对应的 %CPU ,CPU time,Real Mem列。 开始后,手机上按照测试用例操作待测应用; ? 谢谢查看,持续修改完善! 2019-10-05 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |