该工具可以用来测试安卓APP专项测试中的流量,内存,cpu,fps等测试项
一、该工具使用环境:
需要安装JDK和SDK,Python,并且配置环境变量才可使用;
测试设备安卓系统要>=5.0系统以上
关闭电脑上关于百度助手,手机助手等占用adb端口的软件
对于fps的获取,Android 6.0以下系统需要进入系统设置-GPU呈现模式分析,选中在adb shell dumpsys gfxinfo 中
二、手机通过USB先连接电脑,连接好后,输入adb devices,会显示连接的设备(注:电脑只连接1台手机)
三、点击性能监控程序,展开的页面,其中设备号不用填写,因为只连接1台手机,对于网络类型,如果手机WIFI网络就不用选择,如果是蜂窝数据也就是移动数据,那就要选上,然后在根据要监控的参数进行选择,选择后,在输入包名,包名的获取这边就不说明,再怎么不懂找开发,对于监控的数据也可以导出excel然后制作图表;
四、选择好以后,就点击开始,开始数据的采集,如下图:
其中:关于红色字体显示分为两部分,其中fps,就是当>=16.6的时候,会显示红色,也就是可能需要性能优化的地方,另外一个地方就是显示当前操作页面的Activity,不是该测试包的会显示红色,其他还有一个要说的网速,就是时刻检查当前app网路速度,这个对测试流量或者平常app刷新不出来,可以直接判断出来;
五、点击停止,会统计出操作多久耗费的流量多少,如下图;
以上,就是该工具常规使用,设计原理也很简单,只是“拼拼凑凑”:
内存:
通过adb shell dumpsys meminfo + 包名获取的pss tatal 总内存
cpu:
通过 adb shell top -d 1 | grep 包名 获取cpu和获取手机是几核,然后进行相除,来知道cpu百分比
流量:
获取被测app的pid,然后catproc/pid/net/dev,里面的wlan0 代表无线网络,移动网络rmnet0,部分设备的移动网络有的是rmnet_data0
网速:直接后1s的值扣去前1s得到的值就是网速
fps:
通过adb shell dumpsys gfxinfo "PACKAGE_NAME" framestats来获取,
获取到的根据手机系统有两种方式,一种是直接获取到1s刷新的值,一种是120帧的值,两种方式,都要算出平均帧/s,然后倒数算出s/帧,帧率
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。