我们在做app测试的过程中,都会对app内存,cpu这些做一个简单的测试,今天简单的写下如何通过python监控app这些资源变化
实现原理
1、通过adb命令查看app资源内存
2、通过python脚本调用adb命令
3、持续监控写入txt文件或者csv文件中
监控资源过程
我们以淘宝app为例完成本次监控
adb监控内存命令
# adb监控内存变化adb shell dumpsys meminfo com.taobao.taobao
进行数据分析
通过观察,我们只需要提取出来结果的 Native Heap 和 Dalvik Heap,还有内存总和 TOTAL,接下来我们通过python把想要的数据提取出来
# Coding:utf-8import os# 获取淘宝内存命令adb = 'adb shell dumpsys meminfo com.taobao.taobao'# 执行adb命令result = os.popen(adb).read()# 以','进行分割temp = ','.join(result.split())# 获取native值native = temp.split('Native,Heap')[1].split(',')[1]# 获取dalvik值dalvik = temp.split('Dalvik,Heap')[1].split(',')[1]# 获取total值total = temp.split('TOTAL')[1].split(',')[1]
这样的话就把我们想要的数据提取出来了,可以中间加个等待时间,每几秒提取一次数据,接下来我们呢进行对这些数据写入csv文件或者txt文件中
首先我们创建一个列表,把每次提取出来的数据放入到列表中,写入csv文件中
# Coding:utf-8import osimport timeimport csvalldata = [("native", "dalvik","TOTAL")]# 设置循环次数count = 10while count > 0: lines = os.popen("adb shell dumpsys meminfo com.taobao.taobao") # adb 查看app内存 result = lines.read() temp = ','.join(result.split()) native_heap = temp.split('Native,Heap')[1].split(',')[1] print ("native_heap:" + str(native_heap)) dalvik_heap = temp.split('Dalvik,Heap')[1].split(',')[1] print ("dalvik_heap:" + str(dalvik_heap)) total = temp.split('TOTAL')[1].split(',')[1] print ("total:" + str(total)) alldata.append([native_heap, dalvik_heap,total]) count -= 1 print('还剩余:%s次'%count) time.sleep(1) # 等待时间 csvfile = open('test02.csv', 'w',enCoding='utf8',newline='') writer = csv.writer(csvfile) writer.writerows(alldata) csvfile.close()
当我们在跑自动化的过程中,我们再次执行这个监控内存脚本,就可以完成对app内存资源的监控了;
剩下的cpu,耗电量大家试着完成下,要记住耗电量不能通过USB的方式连接哈,要不然就会一直处于充电状态
总结
以上是内存溢出为你收集整理的appium---Android app资源监控全部内容,希望文章能够帮你解决appium---Android app资源监控所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)