腾讯的安卓平台高效的性能测试工具APT(Android Performance Testing Tools),适用于开发自测和定位性能瓶颈,帮助测试人员完成性能基准测试、竞品测试。
APT提供了CPU利用率实时曲线图、多维度内存实时曲线图,方便竞品对比测试和定位内存泄露问题;支持进程内存构成分析,支持手工或超过阈值时自动转储(Dump)详细堆内存对象信息,支持多进程,支持生成和导出常用格式的的日志图表。
APT相比同类工具,具有下面2大特性:
  • 使用Java语言开发,基于Eclipse,跨平台,支持windows、Linux和MAC;
  • 支持同时监控多个进程。
那如何高效利用APT工具呢?现在,我们为大家准备了从安装部署到开启APT各重要功能的介绍资料,方便大家参考。
APT源码地址:https://code.csdn.net/Tencent/apt
欢迎大家进行建立分支和提交更改。

一、安装部署
我们只需要将下载的APT_Eclipse_Plugin.jar文件( 前往CSDN CODE下载)放到Eclipse安装目录下的plugins文件夹下,然后重启Eclipse即可。选择“Eclipse工具栏Window - Open Perspective - Other”,选择APT,即可启动APT透视图。
提示:我们需要提前安装ADT插件。如果是升级安装,可能需要在启动Eclipse的快捷方式中添加“-clean”参数,清除插件的缓存信息。
二、CPU与内存检测
1. “设置”视图简介
首先,我们对“设置”视图的各标签页进行简单介绍:
  • 首选页:控制当前的测试内容;
  • CPU:可设置采样间隔、CPU占有率的采集方法;提供top和dumpsys cpuinfo两种方式;jiffies统计开关,可以精确量化CPU时间片消耗,适用于待机功耗测试;
  • 内存:可设置采集间隔、自动转储(Dump)内存快照开关、自动转储(Dump)内存快照阈值;可设置内存类型曲线显示开关,此项在测试过程中可动态调整。
2. 启动CPU与内存检测
  • 在“设置”视图的“首选项”选项卡中选择监测项:CPU或内存;
  • 点击“进程列表”视图右上角的刷新按钮,获取手机上的正在运行进程列表;
  • 在进程列表中双击或者右键添加要测试的进程(支持多选);
  • 点击“开始”按钮,即可启动监测。
3. 生成统计表格
在CPU、内存视图右边的统计表格中会实时统计CPU、内存和jiffies等三个统计项的最大值、最小值、平均值和增量等统计数据。如下图所示:
 
三、获取内存快照
获取内存快照的方式有2种,一种是手动方式,一种是自动获取。
1. 手动获取内存快照:在进程列表中右键点击被测应用进程,选择“Dump Hprof”。
2. 自动获取内存快照:在“设置”视图的“内存”选项卡中选择开启Dump Hprof功能。设定内存阈值后,启动内存监测。
当被监控的进程内存超过设定的阈值后,会自动保存当前进程的内存快照hprof文件。内存快照.hprof文件保存在用户根目录\APT\log\hprof 目录下,用Memory Analyzer(MAT)打开分析。
四、进程列表视图
1. 开启进程列表视图
本视图包括的选项有:
  • 开始/暂停按钮:控制测试的开始和暂停。
  • 刷新按钮:更新手机的状态以及手机上的进程列表。
  • 打开log:打开APT生成的log,重新生成曲线图。
  • 打开log存放的文件夹。
2. 被测进程列表
  • 支持手动输入进程名添加到被测进程列表的方式,当测试某个进程的启动过程时会很有用,因为开始的时候该进程并不存在。
  • 双击或者右键删除被测的进程。
  • 被测进程左侧的复选框,用于控制测试过程中要显示的进程曲线。
3. 运行进程列表
  • 展示手机上运行的进程列表,双击或者添加到被测进程列表。
  • 右键的上下文菜单:支持手动转储(DUMP)内存快照、GC、获取PMAP文件等功能。
4. 进程内存构成分析
获取快照:在进程列表中右键点击被测应用进程,选择“PMAP”,内存快照保存在: 用户根目录\APT\log\目录下的“包名_pid_pmap_时间戳.txt”
查看快照:点击Eclipse工具栏Windows-》ShowView-》other,选择APT视图PMAP, 在PMAP视图中点击打开快照文件。
可以同时选择2次内存快照打开,会计算增量内存的占比,如下图。可以发现两次快照间被测应用释放了21M的匿名内存映射。
五、注意事项
下面是使用APT工具过程中需要主要的几点内容,为您提示下:
  • APT中的DumpHprof和GC功能由于用到了DDMLIB的功能,所以有两个限制;
  • 确保手机系统或者被测应用是可调试的;
  • DDMLIB不允许同时有多个工具获取被调试手机上的进程信息,所以如果想用APT的这两个功能,最好把Eclipse的透视图切换到APT,然后重启Eclipse;
  • 获取PMAP文件需要root权限,并且需要默认root。如果进入adb shell默认不是root权限,可以优先执行adb root即可;
  • 最好将adb路径加入到path中;
  • Eclipse需要安装ADT插件。

APT源码地址: https://code.csdn.net/Tencent/apt

Android性能测试工具APT使用指南的更多相关文章

  1. 【腾讯开源】Android性能测试工具APT使用指南

    [腾讯开源]Android性能测试工具APT使用指南 2014-04-23 09:58 CSDN CODE 作者 CSDN CODE 17 7833 腾讯 apt 安卓 性能测试 开源 我们近日对腾讯 ...

  2. Android性能测试工具APT

    APT源码地址:https://code.csdn.net/Tencent/apt APT,Android Performance Testing Tools,适用于开发自测和定位性能瓶颈,帮助测试人 ...

  3. 腾讯优测优分享 | Android性能测试工具化实现

    腾讯优测专业的移动云测试平台,自动化测试提供性能测试数据,云真机实时输出性能数据,让测试更简单! 1.Android性能测试介绍 提到Android性能测试,我们总免不了俗地要首先介绍下Android ...

  4. Android性能测试工具(一)之Emmagee

    Android性能测试工具(一) 之Emmagee Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具. 支持SDK:Android2.2以及以上版本 Emm ...

  5. Emmagee——开源Android性能测试工具

    工具:Emmagee作者:孔庆云 网易(杭州)质量保证部 开源地址:https://github.com/NetEase/Emmagee Wiki:https://github.com/NetEase ...

  6. Emmagee—开源Android性能测试工具

    下载:https://github.com/NetEase/Emmagee/releases/download/V2.5/Emmagee.apk 1.Emmagee——Android性能测试工具 Em ...

  7. android性能测试工具

    Android性能测试工具Emmagee介绍   Emmagee介绍 Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具.该工具的优势在于如同windows系 ...

  8. Android性能测试工具之APT

    1.APT工具简介: APT是一个eclipse插件,可以实时监控Android手机上多个应用的CPU.内存数据曲线,并保存数据:另外还支持自动获取内存快照.PMAP文件分析等,方便开发人员自测或者测 ...

  9. Android性能测试工具Emmagee介绍

    Emmagee介绍 Emmagee是监控指定被测应用在使用过程中占用机器的CPU.内存.流量资源的性能测试小工具.该工具的优势在于如同windows系统性能监视器类似,它提供的是数据采集的功能,而行为 ...

随机推荐

  1. selenium ide脚本回放出现element not found

    原因: 点击按钮,没有设置时间延迟,而页面加载,需要时间:当页面元素未加载完全,执行点击事件,就会报错:element... not found. 解决方案: 在点击事件前添加新的COMMAND.设置 ...

  2. android自动获取短信验证码

    前言:android应用的自动化测试必然会涉及到注册登录功能,而许多的注册登录或修改密码功能常常需要输入短信验证码,因此有必要能够自动获得下发的短信验证码.主要就是实时获取短信信息.android上获 ...

  3. MySQL exists的用法介绍

    有一个查询如下: 1 SELECT c.CustomerId, CompanyName   2 FROM Customers c   3 WHERE EXISTS(   4     SELECT Or ...

  4. parseInt方法——将字符串解析为int值

    parseXxx()方法 语法:static int parseInt(String s)    返回字符串的十进制整数形式 static int parseInt(String s, int rad ...

  5. JAVA集合类汇总

    一.集合与数组 数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数情况下使用. ...

  6. fiddler监听127.0.0.1或localhost

    localhost/127.0.0.1的请求不会通过任何代理发送,fiddler也就无法截获. 解决方案 1,用 http://localhost. (locahost紧跟一个点号)2,用 http: ...

  7. iOS -初识UIKit

    UIKit框架:UI界面上每一个元素都是一个对象 一张图片是UIimageView对象 一段文字是一个UILabei对象 一个按钮是一个UIButton对象 搭建UI界面的步骤 利用类创建对象 将对象 ...

  8. PHP 文件包含总结 include require 命名空间 autoload spl_autoload_register 读取文件路径

    总结: 1. include或require包含其他文件 使用./或者 ../,这里的当前路径和上一层路径,取决于运行脚本的路径,会存在如下问题. 在写PHP程序时,经常要用到include或requ ...

  9. SAP SD 销售凭证如何设置字段必填

    在实际业务中,我们经常遇到需要设置某些字段是必输的.那么在SAP中创建销售订单时如何控制必填字段呢?请看操作手册 第一步:设置屏幕增强 T-CODE:shd0 上截图 1----输入需要控制的事物代码 ...

  10. HTTP 错误 404.2 - Not Found 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面

    详细错误:HTTP 错误 404.2 - Not Found. 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面. 出现环境:win7 + IIS7.0 解决办法 ...