• 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占有率的采集方法;提供topdumpsys cpuinfo两种方式;jiffies统计开关,可以精确量化CPU时间片消耗,适用于待机功耗测试

      内存:可设置采集间隔、自动转储(Dump)内存快照开关、自动转储(Dump)内存快照阈值;可设置内存类型曲线显示开关,此项在测试过程中可动态调整。

     

      

     2、APT进程列表:

      被测进程列表:正在测试/准备测试的进程(是否开始测试由进程列表右边几个控制按键控制);

      运行进程列表:测试设备已运行的所有进程,列表中双击或者右键添加要测试的进程(支持多选);

      开始/暂停按钮:控制测试的开始和暂停;

      刷新按钮:更新手机的状态以及手机上的进程列表;

      打开log:打开APT生成的log,重新生成曲线图;

      打开log存放的文件夹。

      

     

    四、cpu和内存测试:

     1、cpu测试:首先设置cpu采样间隔和数据源参数(采样间隔根据实际需要设置,数据源可默认top),然后选择要测试的进程启动测试,对进程对应应用进行操作,将会得到下图:

     

     2、内存测试:首先设置采样间隔和“Dump Hprof”-选择"是"为自动获取内存,选择“否”为手动获取内存快照。

      当被监控的进程内存超过设定的阈值后,会自动保存当前进程的内存快照hprof文件。内存快照.hprof文件保存在用户根目录APTloghprof 目录下,用MAT打开分析。

      

     在进程列表中右键点击被测应用进程,选择“PMAP”内存快照保存在: 用户根目录APTlog目录下的“包名_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插件。

  • 相关阅读:
    如何成为伟大的程序员
    程序员如何增加收入
    一个阿里巴巴码农的六年回眸
    效仿盖茨:PPstream创始人的心路历程
    程序员的工作环境与效率
    软件级负载均衡器(LVS/HAProxy/Nginx)的特点简介和对比
    技术人员创业后就不再适合继续编码了
    互联网行业持续交付的经验
    11 款用于优化、分析源代码的Java工具
    常用 Java 静态代码分析工具的分析与比较
  • 原文地址:https://www.cnblogs.com/dtest/p/4210807.html
Copyright © 2020-2023  润新知