Android性能测试:
     客户端性能测试
     服务端性能测试
 
客户端性能测试:
     1.ROM版本的性能测试(即手机的不同操作系统):关注功耗测试
     2.应用的性能测试
          a.启动时间
          b.内存
          c.CPU
          d.GPU
          e.功耗
          f.流量
          ......
 
一、启动时间的测试:暂分三类
     1、首次启动:应用首次启动所用的时间
     2、非首次启动
     3、应用界面切换:应用界面内切换所花费的时间
 
抓取日志计算的方法:
     adb logcat > 文件夹路径/文件名(./logcat/logcat.txt)
     find "Displayed"  ./logcat/logcat.txt > ./logcat/displayed.txt
     find "activityName" ./logcat/displayed.txt > ./locat/last.txt
     再根据last.txt文件中的时间计算启动时间
 
二、内存测试:关注内存消耗
目标: 为了让应用不占用过多的系统资源,且及时释放内存,保障整个系统的稳定性
     分类:
          1、空闲状态: 打开应用后,点击home键让应用在后台运行
          2、中等规格操作: 对应用的操作时间的间隔较长
          3、满规格操作: 对应用的操作时间的间隔较短
     测试子项:
          1.空闲状态下的应用内存消耗情况
          2.中等规格状态下的应用内存消耗情况
3.满规格状态下的应用内存消耗情况
4.应用内存峰值情况
5.应用内存泄露情况
6.应用是否常驻内存
7.压力测试后的内存使用情况
 
1)第三方工具: 网易的Emmagee、安测试、腾讯的GT等
2)抓取日志方法:
     adb shell dumpsys meminfo > ./logcat/meminfo.txt
     find "应用名称" ./logcat/meminfo.txt > ./logcat/mem.txt
3) 使用 android 提供的 procrank
 
procrank 方法(批处理)

首先去google获取procrank、procmem、libpagemap.so 三个文件 .

然后push文件,执行 adb push procrank /system/xbin adb push procmem /system/xbinadb push libpagemap.so /system/lib

赋权 adb shell chmod 6755 /system/xbin/procrank adb shell chmod 6755 /system/xbin/procmemadb shell chmod 6755 /system/lib/libpagemap.so ,

在开启工具记录 adb shell procrank |grep packagename >/address/procrank.txt
 

内存泄露方面的测试,可以通过几个方面来测试:

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

2.通过eclipse上的mat+heap来分析存在内存泄露方面的节点
 
三、CPU的测试
     测试子项:
          1.空闲状态下的应用CPU消耗情况
 2.中等规格状态下的应用CPU消耗情况
 3.满规格状态下的应用CPU消耗情况
 4.应用CPU峰值情况
CPU的测试方法分为几类:
1.使用android提供的adb shell dumpsys cpuinfo |grep packagename >/address/cpu.txt来获取
2.使用top命令 adb shell top |grep packagename>/address/cpu.txt 来获取     
 
四、GPU的测试
     测试子项:
    1. 界面过度绘制
    2. 屏幕滑动帧速率
    3. 屏幕滑动平滑度

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

    1. 不允许出现黑色像素
    2. 不允许存在4x过度绘制
    3. 不允许存在面积超过屏幕1/4区域的3x过度绘制(淡红色区域)
五、功耗测试
     测试子项:
          1、测试手机安装目标APK前后待机功耗无明显差异
          2、常见使用场景中能够正常进入待机,待机电流在正常范围内
          3、长时间连续使用应用无异常耗电现象
 
命令获取:

adb shell dumpsys battery

......
 
六、流量测试
     测试子项:
          1、应用首次启动流量提示
          2、应用后天连续运行2小时的流量值
          3、应用高负荷运行的流量峰值
          4、应用中等负荷运行时的流量均值
测试方法:
     1、tcpdump抓包,wireshake获取报信息计算
     2、获取uid:

adb shell dumpsys package

                  //adb shell cat /proc/uid_stat/uid/tcp_rcv
                 // adb shell cat /proc/uid_stat/uid/tcp_snd
                         adb shell cat /proc/net/xt_qtaguid/stats

 
 

Android性能测试摘入(TestHome)的更多相关文章

  1. Android性能测试 | 启动时间篇

    [转载]原文地址:http://www.51testing.com/html/93/n-3724593.html 背景介绍 Android用户也许会经常碰到以下的问题: 1)应用后台开着,手机很快没电 ...

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

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

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

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

  4. 《Android 性能测试初探》

    移动测试站点推荐: https://testerhome.com/ 专项相关帖子推荐: <Android 性能测试初探>合集 移动无线应用专项测试浅谈 公开课: [腾讯课堂]Testerh ...

  5. Android性能测试

    FPS和流畅度 FPS 1.dumpsys SurfaceFlinger –latency shell 脚本通过 dumpsys SurfaceFlinger --latency 数据计算 FPS 和 ...

  6. Android程序的入口点和全局变量设置--application

    首先看看 application的官方文档 我之前一直以为Android程序的入口点就是带MAIN和LAUNCHER的Activity的onCreate方法,看来我是错了~  原来真正的入口点是 Ap ...

  7. Android程序的入口点

    原文:Android程序的入口点 android应用程序,由一到多个Activity组成.每个Activity没有很紧密的联系,因为我们可以在自己的程序中调用其它Activity,特别是调用自己的代码 ...

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

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

  9. 使用traceview进行Android性能测试(转)

    使用traceview进行Android性能测试(转) 使用traceview进行Android性能测试  原文链接:http://www.cnblogs.com/Android-and-androi ...

随机推荐

  1. selenium2.0 --常用函数2

    新建实例driver = webdriver.Chrome() 1.获取当前页面的Url函数 方法:current_url 实例: driver.current_url 2.获取元素坐标 方法:loc ...

  2. gdi软光栅化注意事项

    1,opengl viewport原点在左下角,而gdi画图api原点在左上角,所以在实现了整个opengl管线,最后将点通过gdi函数画到屏幕时要进行临时转化. 2,注意gdi画点的api传入的颜色 ...

  3. atitit. it软件项目管理---自己的员工,雇佣军、援军,混合的员工 杂牌 人员管理架构

    atitit. it软件项目管理---自己的员工,雇佣军.援军,混合的员工 杂牌 人员管理架构 1. 企业的正规军,雇佣军,杂牌划分 1 1.1. 企业的员工基本是雇佣而来 1 1.2. 全职员工与兼 ...

  4. eclipse中使用weblogic作为服务器控制台中文乱码

    使用WebLogic时控制台输出中文乱码解决方法:   1.找到weblogic安装目录,当前项目配置的domain   2.找到bin下的setDomainEnv.cmd文件   3.打开文件,从文 ...

  5. matplotlib极坐标系应用之雷达图

    #!/usr/bin/env python3 #-*- coding:utf-8 -*- ############################ #File Name: test.py #Autho ...

  6. HTML5之canvas元素

    定义和用法 fillStyle 属性设置或返回用于填充绘画的颜色.渐变或模式. 默认值: #000000 JavaScript 语法: context.fillStyle=color|gradient ...

  7. spring boot +mybatis+druid 多数据源配置

    因为我的工程需要在两个数据库中操作数据,所以要配置两个数据库,我这里没有数据源没有什么主从之分,只是配合多数据源必须要指定一个主数据源,所以我就把 操作相对要对的那个数据库设置为主数据(dataBas ...

  8. SpringBoot+Shiro引起事务失效、错误原因、解决方法

    一.问题今天发现用户注册的Service的事务并没有起到作用,再抛出一个RuntimeException后,并没有发生回滚,下面是调试步骤: 1.检查数据库的引擎是否是innoDB 2.启动类上是否加 ...

  9. 分析并实现 360 P1路由器上的测速功能(也可以针对金山测速功能)

    现在各种智能路由器以及一些PC上的防火墙软件,都提供网络测速功能.笔者对此进行了研究,并在自己的路由器上也实现了此功能.下面做一下总结 一般的网络测速,主要关注两个方面:网络延迟和下载速率 1.网络延 ...

  10. Linux压缩解压缩命令学习笔记

    Linux中主要的压缩文件有:*.gz   *.tar  *.tar.gz  *.zip  *.bz2  *.tar.bz2 .zip这种古老的压缩格式,在window和Linux中都不需要安装软件可 ...