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
链接地址: https://testerhome.com/topics/506

转载于:https://www.cnblogs.com/fqfanqi/p/6394634.html

Android性能测试摘入(TestHome)相关推荐

  1. 阿里巴巴Android性能测试工具mobileperf正式开源 (天猫精灵Android性能测试-线下篇)

    官方首发 阿里巴巴技术质量:Android 性能测试工具 mobileperf 开源 (天猫精灵 Android 性能测试-线下篇) Android性能测试工具mobileperf github 如果 ...

  2. Android零基础入门第11节:简单几步带你飞,运行Android Studio工程

    2019独角兽企业重金招聘Python工程师标准>>> 之前讲过Eclipse环境下的Android虚拟设备的创建和使用,现在既然升级了Android Studio开发工具,那么对应 ...

  3. Android零基础入门第30节:两分钟掌握FrameLayout帧布局

    原文:Android零基础入门第30节:两分钟掌握FrameLayout帧布局 前面学习了线性布局.相对布局.表格布局,那么本期来学习第四种布局--FrameLayout帧布局. 一.认识FrameL ...

  4. Android零基础入门第25节:最简单最常用的LinearLayout线性布局

    原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...

  5. Android零基础入门第44节:ListView数据动态更新

    2019独角兽企业重金招聘Python工程师标准>>> 经过前面几期的学习,关于ListView的一些基本用法大概学的差不多了,但是你可能发现了,所有ListView里面要填充的数据 ...

  6. Android零基础入门第38节:初识Adapter

    2019独角兽企业重金招聘Python工程师标准>>> 在上一节一起了解了ListView的简单使用,那么本节继续来学习与ListView有着千丝万缕的Adapter. 一.了解MV ...

  7. Android零基础入门第77节:Activity任务栈和启动模式

    2019独角兽企业重金招聘Python工程师标准>>> 通过前面的学习,Activity的基本使用都已掌握,接下来一起来学习更高级的一些内容. Android采用任务栈(Task)的 ...

  8. Android零基础入门第65节:RecyclerView分割线开发技巧

    2019独角兽企业重金招聘Python工程师标准>>> 在上一期通过简单学习,已经领略到了RecyclerView的灵活性,当然都是一些最基础的用法,那么本期一起来学习Recycle ...

  9. Android零基础入门第40节:自定义ArrayAdapter

    原文:Android零基础入门第40节:自定义ArrayAdapter ListView用起来还是比较简单的,也是Android应用程序中最重要的一个组件,但其他ListView可以随你所愿,能够完成 ...

最新文章

  1. xcode 4.2 不再支持 Window-Based Application 的解决办法(转载)
  2. IOS可执行文件学习总结
  3. 数据迁移(数据清洗)分享
  4. 手持移动端特殊链接:打电话,发短信,发邮件
  5. 特定SQL的查询优化
  6. 我的原创,思考写作时间在1小时以上,希望读者有真正收获的博客
  7. excel去除html格式化,带有标签的HTML文本,用于在Excel单元格中格式化文本
  8. 石油与天然气行业中数据报表分析
  9. linux mint 安装内核,使用Ukuu在Ubuntu/Linux Mint上安装Linux Kernel 5.0的方法
  10. elastic-job 新手指南
  11. PHP商城网站绑定中国银联在线支付接口
  12. 多人联机——Photon插件的是使用
  13. 印象深刻的bug汇总(持续更新)
  14. 从数据结构的角度来看Mysql为什么使用B+树
  15. 我们要不要和to B“霸王龙”企业交朋友?
  16. vscode绿色、护眼色,vue自动格式化配置参考
  17. Python爬虫学习笔记_DAY_3_Python类型查询与类型转换【Python爬虫】
  18. 页面关键字实时搜索查询案例
  19. 笔记本电脑鼠标自己乱动怎么办?
  20. Ubuntu 安装matplotlib

热门文章

  1. 配电网重构知识及matlab实现(2)
  2. 前端新手教程!如何快速入门web前端
  3. GMM-HMM kaldi 详解
  4. DeviceIoControl获取硬盘信息
  5. Mac 如何同步 Google 日历
  6. git push报错处理办法
  7. 对于多曲面模型如何转换钣金并展开
  8. 直线相交以及三角形面积公式
  9. Vmware虚拟机上网配置
  10. 微信云开发Al短视频一键换脸小程序源码(附搭建教程)