Android客户端性能测试(一):使用APT测试Android应用性能
一、APT介绍:
APT:Android Performance Testing Tools,适用于开发自测和定位性能瓶颈,帮助测试人员完成【性能基准测试、竞品测试】。
APT提供了CPU利用率实时曲线图、多维度内存实时曲线图,方便竞品对比测试和定位内存泄露问题;支持进程内存构成分析,支持手工或超过阈值时自动转储(Dump)详细堆内存对象信息,支持多进程,支持生成和导出常用格式的的日志图表。
APT相比同类工具,具有下面2大特性:
①、使用Java语言开发,基于Eclipse,跨平台,支持windows、Linux和MAC;
②、支持同时监控多个进程。
二、APT环境搭建:
进入https://code.csdn.net/Tencent/apt,下载apt压缩包
下载完成后解压缩.zip包,把里边的APT_Eclipse_Plugin_1.1.8.jar文件拷贝到Eclipse安装目录下的plugins文件夹下,然后重启Eclipse。选择“Window → Open Perspective → Other”,选择APT,即可启动APT。
三、APT页面设置介绍:
1、设置介绍:
首选页:控制当前的测试内容(建议每次选择一项进行测试,防止测试数据受影响);
CPU:可设置采样间隔、CPU占有率的采集方法;提供top和dumpsys cpuinfo两种方式;jiffies统计开关,可以精确量化CPU时间片消耗,适用于待机功耗测试;
内存:可设置采集间隔、自动转储(Dump)内存快照开关、自动转储(Dump)内存快照阈值;可设置内存类型曲线显示开关,此项在测试过程中可动态调整。
2、APT进程列表:
被测进程列表:正在测试/准备测试的进程(是否开始测试由进程列表右边几个控制按键控制);
运行进程列表:测试设备已运行的所有进程,列表中双击或者右键添加要测试的进程(支持多选);
开始/暂停按钮:控制测试的开始和暂停;
刷新按钮:更新手机的状态以及手机上的进程列表;
打开log:打开APT生成的log,重新生成曲线图;
打开log存放的文件夹。
四、cpu和内存测试:
1、cpu测试:首先设置cpu采样间隔和数据源参数(采样间隔根据实际需要设置,数据源可默认top),然后选择要测试的进程启动测试,对进程对应应用进行操作,将会得到下图:
2、内存测试:首先设置采样间隔和“Dump Hprof”-选择"是"为自动获取内存,选择“否”为手动获取内存快照。
当被监控的进程内存超过设定的阈值后,会自动保存当前进程的内存快照hprof文件。内存快照.hprof文件保存在用户根目录\APT\log\hprof 目录下,用MAT打开分析。
在进程列表中右键点击被测应用进程,选择“PMAP”,内存快照保存在: 用户根目录\APT\log\目录下的“包名_pid_pmap_时间戳.txt”。
查看快照:点击Eclipse工具栏Windows → ShowView → other,选择APT视图PMAP, 在PMAP视图中点击打开快照文件。
五、注意事项:
1、APT中的DumpHprof和GC功能由于用到了DDMLIB的功能,所以有两个限制;
2、确保手机系统或者被测应用是可调试的;
3、DDMLIB不允许同时有多个工具获取被调试手机上的进程信息,所以如果想用APT的这两个功能,最好把Eclipse的透视图切换到APT,然后重启Eclipse;
4、获取PMAP文件需要root权限,并且需要默认root。如果进入adb shell默认不是root权限,可以优先执行adb root即可;
5、最好将adb路径加入到path中;
6、Eclipse需要安装ADT插件。
Android客户端性能测试(一):使用APT测试Android应用性能的更多相关文章
- 移动端 - Android客户端性能测试常见指标
rom版本的性能测试 一般关注功耗(不过 rom 版本的功耗测试跟应用的功耗测试会有所差异,当然只是用例设计方面的差异,工具仍然采用安捷伦电源仪进行) 应用的性能测试 包括很多测试项,如启动时间.内存 ...
- Android客户端与PC服务端、android服务端通过WiFi通信
前期准备:我的是Linux Mint操作系统(总之折腾的过程中怀疑过是不是系统的问题),首先是要创建wifi热点给android手机使用,这个时候笔记本作为通信的服务器端,android手机作为客户端 ...
- Android客户端稳定性测试——Monkey
修改时间 修改内容 修改人 2016.6.20 创建 刘永志 2016.6.29 完成 刘永志 Monkey简介: Android SDK自带的命令行测试工具,向设备发送伪随机事件流,对应用程序进行进 ...
- 使用calabash测试开源中国Android客户端
Calabash-android是支持android的UI自动化测试框架,前面已经介绍过<中文Win7下成功安装calabash-android步骤>,这篇博文尝试测试一个真实应用:开源中 ...
- appium 自动化测试之知乎Android客户端
appium是一个开源框架,相对来说还不算很稳定.转载请注明出处!!!! 前些日子,配置好了appium测试环境,至于环境怎么搭建,参考:http://www.cnblogs.com/tobecraz ...
- 【原创】轻量级即时通讯技术MobileIMSDK:Android客户端开发指南
申明:MobileIMSDK 目前为个人维护的原创开源工程,现陆续整理了一些资料,希望对需要的人有用.如需与作者交流,见文章底签名处,互相学习. MobileIMSDK开源工程的代码托管地址请进入 G ...
- 基于SuperSocket的IIS主动推送消息给android客户端
在上一篇文章<基于mina框架的GPS设备与服务器之间的交互>中,提到之前一直使用superwebsocket框架做为IIS和APP通信的媒介,经常出现无法通信的问题,必须一天几次的手动回 ...
- 微信Android客户端架构演进之路
这是一个典型的Android应用在从小到大的成长过程中的“踩坑”与“填坑”的历史.互联网的变化速度如此之快,1年的时间里,可以发生翻天覆地的变化.今天在这里,重新和大家回顾微信客户端架构的演进过程,以 ...
- Android 客户端设计之环境考虑
我做过两三个android客户端应用的整体设计和部分的编码,这里仅仅谈一下设计方面的故事(此乃原创2015:11:02). 做客户端设计,首先要考虑应用所在的环境,包括三方面:1 要设计的apk是在一 ...
随机推荐
- java课后作业 弹出窗口求两个数的加减乘除
//计算2个数的加减乘除 谷伟华 2015/10/6package jisuan; import javax.swing.JOptionPane; public class Jiasuan { pub ...
- 无法定位序数4369于动态链接库libeay32.dll
c:\windows\system32目录下应该有libeay32.dll,可能它过于陈旧,需要换一个新版本的libeay32.dll
- UICollectionView cellForItemAtIndexPath 方法不走
在storyboard 中 UICollectionView cellForItemAtIndexPath not called 被坑了好久,各种问题点查找,终于解决了 解决办法: self.auto ...
- supersr--addSubview和 insertSubView 区别
A addSubview B 是将B直接覆盖在A的最上层 例子: [self.view addSubview:scrollView]; A insertSubView B AtIndex:2 是将 ...
- JS_ECMA基本语法中的几种封装的小函数-2
大家好!今天继续给大家写一下ECMA中的剩下的小函数以及实用的实例: 首先先给大家说一下字符串.数组.数学方法以及json的一点小知识点: 字符串方法: str.length str.charAt(i ...
- 图像特征提取之LBP特征
LBP(Local Binary Pattern,局部二值模式)是一种用来描述图像局部纹理特征的算子:它具有旋转不变性和灰度不变性等显著的优点.它是首先由T. Ojala, M.Pietik?inen ...
- Java使用正则表达式解析LRC歌词文件
LRC歌词是一种应用广泛的歌词文件,各主流播放器都支持. lrc歌词文本中含有两类标签: 1.标识标签(ID-tags) [ar:艺人名] [ti:曲名] [al:专辑名] [by:编者(指编辑LRC ...
- FastPolice项目总结
This is the final homework for spatial information Mobile Service Lesson.It generally inclusived the ...
- hud 2602 Bone Collector
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2602 思路:典型的01背包 #include<stdlib.h> #include< ...
- Loadrunner11.0 录制手机App脚本的方法
使用Loadrunner录制手机终端App脚本 1. 说明 目前手机APP上的功能日益丰富,对手机应用功能的性能测试需求也越来越多.公司比较抠门没有花钱买Loadrunner,可怜我们工作中一直用的破 ...