• 瑞金千人雨伞拼图创世界吉尼斯纪录 2019-07-02
  • “熊孩子”与幼儿教育 2019-06-15
  • 港媒称中国手游在韩国吸金美日手游遭韩玩家冷落 2019-06-15
  • 酒与植物 轻酌一樽是花香 2019-05-13
  • 台军为帮农民每餐吃香蕉 台媒改善两岸关系是根本 2019-05-12
  • 原脉——大地肌体上的血脉文章中国国家地理网 2019-05-11
  • 用更加过硬的作风追求改革新突破 2019-05-11
  • 欧版T90暴露法德坦克硬伤 VT4我离最强只差两步 2019-05-10
  • 【专题】河北省无偿献血领导小组会议报道 2019-05-10
  • 科幻推理剧《端脑》北京首映 搜狐匠心“烧脑”之作获赞 2019-05-09
  • 【大家谈】激励实干担当,谱写奋斗“进行曲” 2019-05-08
  • 回复@老老保老张工:连马克思都要重构个人所有制也!你不会自以为比马克思还高明吧? 2019-05-08
  • 学习宣传贯彻习近平新时代中国特色社会主义思想系列研讨会br第三场研讨会发言摘编 2019-05-07
  • 2000年出生的孩子属龙,要风得风,要雨得雨 2019-05-07
  • 美国防部宣布暂停8月美韩联合军演 2019-05-06
  • 贵州生肖时时彩走势:一个让你开挂的Android 性能测试方法 [复制链接]

    2019-11-13 10:18
    BlueManlove 阅读:788 评论:0 赞:0
    Tag:  Android 性能测试

    香港生肖时时彩 www.eptu.com.cn Android性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为2类,对于应用性能测试,包括很多测试项,如启动时间、内存、CPU、GPU、功耗、流量等。但针对rom版本的性能测试,一般关注功耗。

    一、不同版本的性能测试

    1、rom版本的性能测试

    rom版本一般就关注功耗测试,不过rom版本的功耗测试跟应用的功耗测试会有所差异,当然只是用例设计方面的差异,工具仍然采用安捷伦电源仪进行。

    2、应用的性能测试

    应用的性能测试,对于启动时间、内存、CPU测试大家一般都使用外部提供的第三方工具来辅助测试,如GT、安测试等、这些工具的原理都是基于调用Android底层的一些api来获取到测试所用到的值,当然我们也可以采用其他方法,如使用Android本身提供的一套adb即可完成上述测试。

    一个让你开挂的Android 性能测试方法

    对于GPU、功耗、等测试来说,用第三方工具测试得到的数值一般都不是很准确,这个时候我们需要引入硬件来进行测试了,GPU可以采用高速相机来进行测试,功耗可以使用万用表或安捷伦电源仪来进行测试(ps:有硬件动手能力的可以DIY一个小板进行)。

    3、Android的性能测试

    该本分内容为今天主要详述的内容,具体分析见下文。

    二、关于Android的性能测试

    1、启动时间

    首先,我们来说说启动时间。关于应用的启动时间的测试,分为三类:

    ①首次启动--应用首次启动所花费的时间

    ②非首次启动--应用非首次启动所花费的时间

    ③应用界面切换--应用界面内切换所花费的时间那么如何来做启动时间的测试呢,一般我们分为2类,一类为使用软件来测试,一类为使用硬件来测试,首先我们说说软件测试的方法,可能大部分人都比较通晓使用Android提供的DisplayManager来获取activity的启动时间。

    一个让你开挂的Android 性能测试方法

    步骤:

    一个让你开挂的Android 性能测试方法

    通过计算activity最后剩余的时间之和即可(这里可以使用excel表格自动相加也可以使用算法,我就不详细介绍了)。

    除了Display Manager的打印时间方法后,还有通过关注am的启动时间及Display Manager打印的结束时间,通过两者时间之间想减也能得到应用的启动时间,还有可以通过Power Manager来计算打印时间,在应用启动的时候,我们可以关注Activity Manager-Launch的变化来计算应用的启动时间,还有可以通过截图统计启动时间,对于自研应用,最效率的莫过于直接在程序中插入打印时间的节点了。

    除了软件测试的方法,还有硬件测试,我们可以使用高速相机或者手机,采用录像的方法把应用启动过程给录制下来,然后通过人工数帧或者程序数帧的方式计算启动时间。

    2、内存消耗

    1)内存消耗概念

    这个测试节点的设计目标是为了让应用不占用过多的系统资源,且及时释放内存,保障整个系统的稳定性,当然关于内存测试,在这里我们需要引入几个概念:空闲状态、中等规格、满规格。

    一个让你开挂的Android 性能测试方法

    空闲状态:指打开应用后,点击home键让应用后台运行,此时应用处于的状态叫做空闲。

    中等规格和满规格:指的是对应用的操作时间的间隔长短不一,中等规格时间较长,满规格时间较短。

    接下来我们说说在内存测试中,存在很多测试子项,如下清单所示:

    ①空闲状态下的应用内存消耗情况

    ②中等规格状态下的应用内存消耗情况

    ③满规格状态下的应用内存消耗情况

    ④应用内存峰值情况

    ⑤应用内存泄露情况

    ⑥应用是否常驻内存

    ⑦压力测试后的内存使用情况

    2)关于Android内存测试方法分类

    ①使用Android本身提供的ActivityManager.MemoryInfo()方法获得(此方法请百度或google)此类第三方工具有如网易的Emmagee、安测试、腾讯的GT等。

    ②使用Android提供的对应内容,来获取。

    一个让你开挂的Android 性能测试方法

    ③使用Android提供的procrank。这里我们详解一下procrank方法(批处理)。

    首先,去google获取procrank、procmem、libpagemap.so三个文件;然后push文件,执行;最后,剩下的就是整理测试数据了。

    一个让你开挂的Android 性能测试方法

    3)关于内存泄露方面的测试

    可以通过几个方面来测试:

    ①通过monkey压力测试记录内存使用情况,分析数据曲线图及日志情况;

    ②通过eclipse上的mat+heap来分析存在内存泄露方面的节点。

    3、CPU方面的测试

    1)子项清单

    CPU跟内存一样,存在一些测试子项,如下清单所示:

    ①空闲状态下的应用CPU消耗情况

    ②中等规格状态下的应用CPU消耗情况

    ③满规格状态下的应用CPU消耗情况

    ④应用CPU峰值情况

    2)CPU的测试方法

    1.使用Android提供的


    一个让你开挂的Android 性能测试方法

    2.使用top命令

    一个让你开挂的Android 性能测试方法

    3.第三方软件

    例如:3Dmax、安兔兔等。

    3)GPU的测试方法

    自从CPU及内存后,GPU这个词对于PC性能测试者也不陌生了。3Dmax、安兔兔等之类的第三方软件,让GPU在移动端性能测试领域都知晓。但对于应用的GPU该如何来测试呢?我们先引入几个名词:过度绘制、帧率、帧方差。

    一个让你开挂的Android 性能测试方法

    过度绘制:是指界面显示的activity套接了多层而导致;

    帧率:是指屏幕刷新率;

    帧方差:是指屏幕刷新帧间隔方差。

    对于GPU的测试主要包括以下几个测试子项:界面过度绘制、屏幕滑动帧速率、屏幕滑动平滑度。

    ①过度测绘

    它主要通过人工进行测试。打开开发者选项中的显示GPU过度绘制来进行测试(PS:只有Android4.2及以上的版本才具备此功能)。验收的标准为:

    a、不允许出现黑色像素

    b、不允许存在4x过度绘制

    c、不允许存在面积超过屏幕1/4区域的3x过度绘制(淡红色区域)

    ②屏幕滑动帧速率的2种主要方法

    → 软件测试方法

    a、手机端需打开开发者选项中的启用跟踪后勾选Graphics和View

    b、启动SDK工具Systrace插件,勾选被测应用,点击Systrace插件,在弹出的对话框中设置持续抓取时间,在tracetaps下面勾选gfx及view选项,

    c、人滑动界面可以通过节拍来进行滑动或者扫动,帧率数据会保存到默认路径下,默认名称为trace.html

    d、将trace.html文件拷贝到linux系统下通过命令进行转换,生成trace.csv文件:

    一个让你开挂的Android 性能测试方法

    e、用excel打开文件计算得到帧率

    → 硬件方法

    这里需要引入高速相机,打开高速相机,开启摄像模式,录制人滑动或者扫动被测应用的视频,再通过人工或者程序数帧的方法对结果进行计算得到帧率。

    一个让你开挂的Android 性能测试方法

    ③屏幕滑动平滑度测试

    方法如同帧率测试,唯一的差异就是最后的结果计算公式的差异。GPU的测试目前业界使用的均为硬件来进行,软件测试的数据相较硬件差异较大,对于帧率及帧方差的测试标准而言,需对待不同机型设定不同的标准。

    4、功耗测试

    1)功耗测试类别

    功耗测试主要从以下几个方面入手进行测试:

    a、测试手机安装目标APK前后待机功耗无明显差异。

    b、常见使用场景中能够正常进入待机,待机电流在正常范围内。

    c、长时间连续使用应用无异常耗电现象。

    一个让你开挂的Android 性能测试方法

    2)测试方法

    ①软件测试

    A、第三方工具:如金山电池管家之类的;

    B、自写工具:这里一般会使用3种方法:

    第一种,基于Android提供的PowerManager.WakeLock来进行;

    第二种,比较复杂一点,功耗的计算=CPU消耗+Wakelock消耗+数据传输消耗+GPS消耗+Wi-Fi连接消耗;

    第三种,通过adbshelldumpsysbattery来获取。

    ②硬件测试

    在这里,我们一般使用万用表或者功耗仪进行测试。使用功耗仪测试的时候,需要制作假电池来进行的,有些不能拔插电池的手机,还需要焊接才能进行功耗测试。

    5、流量测试

    性能测试的——流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试。

    1)流量测试,同样需要引入几个名词:中等负荷、高负荷。

    中等负荷:应用正常操作

    高负荷:应用极限操作

    2)测试项包括:

    a、应用首次启动流量提示;

    b、应用后台连续运行2小时的流量值;

    c、应用高负荷运行的流量峰值;

    d、应用中等负荷运行时的流量均值;

    3)流量测试一般都是用软件来进行的,这里我们一般分为2类:

    a、采用市场提供的第三方工具来进行测试,如流量宝之类的;

    b、自研工具进行测试。


    我来说两句
    您需要登录后才可以评论 登录 | 立即注册
    facelist
    所有评论(0)
    领先的中文移动开发者社区
    18620764416
    7*24全天服务
    意见反?。[email protected]

    扫一扫关注我们

    Powered by Discuz! X3.2© 2001-2019 Comsenz Inc.( 香港生肖时时彩 )

  • 瑞金千人雨伞拼图创世界吉尼斯纪录 2019-07-02
  • “熊孩子”与幼儿教育 2019-06-15
  • 港媒称中国手游在韩国吸金美日手游遭韩玩家冷落 2019-06-15
  • 酒与植物 轻酌一樽是花香 2019-05-13
  • 台军为帮农民每餐吃香蕉 台媒改善两岸关系是根本 2019-05-12
  • 原脉——大地肌体上的血脉文章中国国家地理网 2019-05-11
  • 用更加过硬的作风追求改革新突破 2019-05-11
  • 欧版T90暴露法德坦克硬伤 VT4我离最强只差两步 2019-05-10
  • 【专题】河北省无偿献血领导小组会议报道 2019-05-10
  • 科幻推理剧《端脑》北京首映 搜狐匠心“烧脑”之作获赞 2019-05-09
  • 【大家谈】激励实干担当,谱写奋斗“进行曲” 2019-05-08
  • 回复@老老保老张工:连马克思都要重构个人所有制也!你不会自以为比马克思还高明吧? 2019-05-08
  • 学习宣传贯彻习近平新时代中国特色社会主义思想系列研讨会br第三场研讨会发言摘编 2019-05-07
  • 2000年出生的孩子属龙,要风得风,要雨得雨 2019-05-07
  • 美国防部宣布暂停8月美韩联合军演 2019-05-06
  • 黑龙江22选5开走势图 玩斗音怎么赚钱 澳洲幸运10微信群 幸运飞艇开奖直播 四川麻将上下分app软件 京东方a股票 今天黑龙江十一选五开奖结果 福彩3d试机号今天开机号 羊肉汤店加盟赚钱吗 31选7开奖中奖规则 幸运飞艇微信群 竞彩足球比分推荐 2018年两码中特书 澳洲幸运10下载 双色球历史开奖号码 新疆时时彩每天开奖号