zoukankan      html  css  js  c++  java
  • 腾讯优测优分享 | 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客户配备了专家团队提供定制化综合测试解决方案。

  • 相关阅读:
    mybatis中的#和$的区别
    Java 导出 CSV
    java生成UUID
    Java并发编程的艺术(七)——Executors
    Java并发编程的艺术(六)——线程间的通信
    Java并发编程的艺术(五)——中断
    Java并发编程的艺术(四)——线程的状态
    Java并发编程的艺术(三)——volatile
    Java并发编程的艺术(二)——重排序
    Java并发编程的艺术(一)——并发编程需要注意的问题
  • 原文地址:https://www.cnblogs.com/utest/p/5853658.html
Copyright © 2011-2022 走看看