腾讯优测优分享 | Android性能测试工具化实现
腾讯优测专业的移动云测试平台,自动化测试提供性能测试数据,云真机实时输出性能数据,让测试更简单!
1、Android性能测试介绍
提到Android性能测试,我们总免不了俗地要首先介绍下Android性能参数以及获取方法。目前Android性能测试过程中关注比较性能指标有CPU、内存占用和电量消耗,其中CPU占用可以通过“top”命令来查看,内存占用是通过“dumpsys meminfo”来查看。
“top”命令得出的性能参数有CPU占用百分比、VSS(虚拟耗用内存,包含共享库占用的内存) 和RSS(实际使用物理内存,包含共享库占用的内存);
“dumpsys meminfo”命令完整格式是:adb shell dumpsys meminfo packagenameorpid 。dumpsys得出程序内存分为native和dalvik,dalvik就是我们平常说的java堆,我们创建的对象是在这里面分配的,并且系统自动回收这部分内存,我们更多的是关注Native堆的占用情况。
2、Android性能测试工具
工具的目标是:提高性能测试工作效率
手工操作缺点:
目前我们性能测试的主要方法是反复地对某个页面进行同样的操作或使用,同时操作过程中通过脚本进行监控,最后导出脚本执行结果并且对结果进行分析,从而得出某个Android APP的资源占用情况。
但是在实际测试过程中,我们大部分操作仍需要通过人工执行脚本并且要导出脚本生成图表,这样的手工执行效率就有点低,因此我们可以将部分手工操作实现程序化,从而提高性能测试效率。
3、Android性能测试工具介绍
1.工具功能:
(1)执行并监控命令输出:
测试人员无需手动去执行任何adb命令,只需要填写被测程序包名和数据刷新间隔就可以了,也就是这个工具替代了之前手工执行的两个shell脚本:meminfo.sh和top.info,同时用户可以只选择CPU或者内存之一的占用情况进行监控,也可以选择CPU和内存二者同时监控,在命令执行间隔上以秒为单位进行输出,如果选择了0那么基本上可以达到0.1秒的效果。
(2)自动输出数据和产生报表:
自动输出结果有三种方式:第一种是实时地刷新并显示,另一种是停止监控之后在工具下方用图表的形式显示出来,最后一种是自动产生excel报表进行显示,excel报表形式最为使用,用户可以通过对比竞争对手数据从而输出测试结果。
2.工具执行结果:
我们可以从下图得出功能运行时内存和 CPU占用情况:
(1)CPU占用情况:
测试结果说明:
图中命令执行间隔以0秒为单位,实时监测的对象是内存和cpu二者的占用情况,上图中显示的是cpu的占用变化曲线。如果点击图中“获取内存变化曲线”按钮,就可以获得此时的内存占用变化曲线图。
(2)Excel报表(以内存占用为例):
测试结果说明:
内存的excel报告包括了native , dalivi和总的内存占用priv dirty,从图表报告来看手机管家在两次病毒查杀过程内存消耗大致一样。
4、后记
这个工具属于摸索性质,在excel操作上主要参考和使用别的程序库。由于是多个线程对同一个标准输出操作和线程操作COM,在使用时要按正常步骤操作,并且在生成报表时不要去拖动excel的滚动条就出现问题。还有个问题是如果测试时间比较长,输出数据比较多的话建议直接看excel报表输出,因为数据太多会导致输出线条重叠在一起。
加入腾讯优测官方群 214483489 与大咖们分享技术与时讯!
腾讯优测是专业的移动云测试平台,为应用、游戏、H5混合应用的研发团队提供产品质量检测与问题解决服务。不仅在线上平台提供自动化兼容性测试、云手机远程租用与调试、漏洞分析、自动化测试工具Xtest等多种质量检测工具,更为VIP客户配备了专家团队提供定制化综合测试解决方案。
腾讯优测优分享 | Android性能测试工具化实现的更多相关文章
- 腾讯优测-优社区干货精选 | 那些年,我们在Android机型适配上遇到的坑之Camera拍照时快门咔嚓声
文/腾讯优测研发工程师 吴宇焕 优测小优有话说: android机型适配的坑自然是不少,不想掉坑快来优测优社区~ 现在Android手机一般都会带有照相功能,有很多朋友就发现手机照相时快门声音很响,想 ...
- 腾讯优测-优社区干货精选 | android开发在路上:少去踩坑,多走捷径(下)
文/腾讯公司 陈江峰 优测小优有话说: android开发的坑自然是不少,不想掉坑快来优测优社区~ 6.Android APP开发中其它需要提醒的问题 android4.4在UI线程无法进行网络操作. ...
- 优测优社区干货精选|老司机乱谈编辑器之神——vim
文 / 腾讯 吴双 前言 优测小优 有话说: 腾讯优测只有应用测试大神?不不不,我们还有各种研发大牛! *** vim 是一种信仰,我自从2004年有了这个信仰,已经12个年头了.本文介绍了学习vim ...
- 【腾讯开源】Android性能测试工具APT使用指南
[腾讯开源]Android性能测试工具APT使用指南 2014-04-23 09:58 CSDN CODE 作者 CSDN CODE 17 7833 腾讯 apt 安卓 性能测试 开源 我们近日对腾讯 ...
- Android性能测试工具APT使用指南
腾讯的安卓平台高效的性能测试工具APT(Android Performance Testing Tools),适用于开发自测和定位性能瓶颈,帮助测试人员完成性能基准测试.竞品测试. APT提供了CPU ...
- Android性能测试工具(一)之Emmagee
Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...
- Emmagee——开源Android性能测试工具
工具:Emmagee作者:孔庆云 网易(杭州)质量保证部 开源地址:https://github.com/NetEase/Emmagee Wiki:https://github.com/NetEase ...
- Emmagee—开源Android性能测试工具
下载:https://github.com/NetEase/Emmagee/releases/download/V2.5/Emmagee.apk 1.Emmagee——Android性能测试工具 Em ...
- android性能测试工具
Android性能测试工具Emmagee介绍 Emmagee介绍 Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具.该工具的优势在于如同windows系 ...
随机推荐
- java时间戳
1.时间戳的定义 时间戳是指文件属性里的创建.修改.访问时间. 数字时间戳技术是数字签名技术一种变种的应用.在电子商务交易文件中,时间是十分重要的信息.在书面合同中,文件签署的日期和签名一样均是十分重 ...
- JAVA 序列化
一.概念 序列化:将对象转换为字节序列的过程. 反序列化:将字节序列恢复为对象的过程. 二.简单示例 package serialization; import java.io.Serializabl ...
- D1.1.利用npm(webpack)构建基本reactJS项目
前提: 已经安装nodejs和npm #全局安装webpack 自动构建化工具,职能管理项目:webpack-dev-server是开发工具,提供 Hot Module Replacement 功能# ...
- C学习
\a:警报 1.exit(),提前结束程序.include <stdlib.h> 2.getch()无缓存.getchar()有缓存,多条连用时注意末尾换行符否则始终.putchar(). ...
- RTTI
RTTI(Run-Time Type Identification,通过运行时类型识别)程序能够使用基类的指针或引用来检查这些指针或引用所指的对象的实际派生类型. 编辑本段RTTI介绍 RTTI提 ...
- HTML中的select只读
因为Select下拉框只支持disabled属性,不支持readOnly属性,而在提交时,disabled的控件,又是不提交值的.现提供以下几种解决方案: 1.在html中使用以下代码,在select ...
- VMware Workstation安装MAC OS X系统
http://jingyan.baidu.com/article/ff411625b9011212e48237b4.html
- C++中的文件读取结束
while(cin>>N>>M) { } ok???
- Outlook查找未读邮件
1.查找新邮件的未读邮件,可以在下图中查找 2.恢复已删除邮件,如果邮件是未读邮件,在上图中是查找不到,只能通过视图去查找 步骤2内容摘自百度
- yate: windows下源码下载,配置,编译
源码下载:使用svn下载checkout:http://voip.null.ro/svn/yate/trunk 配置:(本人使用的是vs2008,故下载的qt工具都是对应2008) 1. 下载并安装q ...