性能adb命令
启动时间-冷启动
启动App命令
adb shell am start -W -n com.bit_health.android/.ui.common.activities.BitHealthMainActivity
停止App命令
adb shell am force-stop com.bit_health.android
启动时间-热启动
启动App命令(与冷启动一样)
adb shell am start -W -n com.bit_health.android/.ui.common.activities.BitHealthMainActivity
停止App命令
adb shell input keyevent 3
监控包名,actvity名的命令
adb logcat|findstr START
找到的汇康e家包名activity名
com.bit_health.android/.ui.common.activities.BitHealthMainActivity
如何判断启动时间的好坏:
与竞品App的启动进行对比
使用时间戳差值来计算
自动化脚本的实现
1.获取命令执行时间,作为启动时间参考值
2.在命令前后加上时间戳,以差值作为参考值
CPU性能测试
adb shell dumpsys cpuinfo|findstr com.bit_health.android
写一个脚本定时的输出CPU的状态值
监控CPU命令时写一个自动化操作的脚本
CPU状态始终上升或者没有下降...这种CPU状态是不合理的
此时拿着这些数据去给开发提一些建议
流量监控
使用夜神模拟器进行adb连接的方法
跳转到F:\sdk\android-sdk-windows\platform-tools
执行 adb connnect 127.0.0.1:62001
1.adb shell ps|findstr com.bit_health.android
1.adb shell cat /proc/pid/net/dev
获取到流量值之后主要是与竞品或者之前的版本进行对比
1.与之前版本做相同操作所消耗的流量进行对比
!!新闻类的产品需要做流量监控
电量监控(电量测试时间最好在半个小时到一个小时以上)
获取电量
adb shell dumpsys battery
level表示电量百分比
主要是利用前后变化的两个level值做差,算出电量的一个变化
手机连接usb线之后会进入充电状态,需要切换到非充电状态
切换到非充电状态:
adb shell dumpsys battery set status 1(切换status几都可以只要不是2就行)
内存监控
获取内存
adb shell top -d 1
-d表示命令刷新的频率 -d 1表示1秒钟刷新一次
adb shell top -d 1>meminfo
需要获取两个数值
VSS-Virtual Set Size 虚拟耗用内存
RSS-Resident Set Size 实际使用物理内存
如果在长时间使用之后,内存处在一个稳定、恒定的状态
说明我们的app没有发生内存泄漏
连续测试两个小时之后才能发现问题..
在6M之内的变化可以认为是对app影响不大
如果差值达到了几百M...可以认为app发生了内存泄漏
每一轮测试的内存变化当成一个参考值
FPS&过度渲染
FPS frames per second-每秒的帧数
60帧。。。很流畅
开发者选项中的GPU呈现模式分析
选第二项在屏幕上显示为条形图
图形中的绿线表示fps的基准值16ms
每一个柱形图是每一帧的绘图耗时
如果发现有很多帧的绘图耗时都超过了绿线,表示当时的流畅度出现了问题
过度渲染:描述的是屏幕上的某个像素在同一帧的时间内被绘制了多次
显示GPU过度绘制
颜色过深表示当前UI层数过多
如果发现页面特别卡的时候,可以打开过度绘制进行查看,看哪一部分绘制的元素过多
性能adb命令的更多相关文章
- Android App性能测试之adb命令
本篇文章总结了Android App性能测试过程中常用的adb命令.通过这些adb命令,可以查看App的性能数据,为评判性能好坏作参考. CPU相关 显示占用CPU最大的5个应用 adb shell ...
- 常用的adb命令
在平时的工作中,会经常用到adb命令,在这里稍微整理了一下. 一.概要 1.什么是adb? adb全称为Android Debug Bridge,就是起到调试桥的作用.顾名思义,adb就是一个debu ...
- 软件测试之adb命令-实际公司使用场景--今日log
软件测试之adb命令-实际公司使用场景--今日log Dotest-董浩整理 1)可以看内存泄漏: 2)可以安装.卸载app--截图并提交bug: 3)可以通过抓app日志定位问题: 4)可以结合mo ...
- adb命令集锦
adb 是什么? adb工具即Android Debug Bridge(安卓调试桥) tools.它就是一个命令行窗口,用于电脑端与模拟器或者真实设备交互. 常用操作: 把文件发送到android设备 ...
- ADB命令(全)
当熟悉Shell命令的人使用adb是没有任何难度的,因为adb中绝大多少命令都是引用的shell命令 以下命令进行归类,红色部分字体是测试人员常用的adb命令 基础命令 1.启动adb服务 adb s ...
- 如何使用 adb 命令实现自动化测试
如何使用 adb 命令实现自动化测试 一.前提: 1.打开手机调试模式,确保手机已正常连接电脑,可在电脑上通过adb devices命令查看,结果如下说明连接成功: List of devices a ...
- 一些实用的adb命令
一.前提: 1.打开手机调试模式,确保手机已正常连接电脑,可在电脑上通过adb devices命令查看,结果如下说明连接成功: List of devices attached90xxxxc9 dev ...
- Android app ADB命令
* 查看设备 adb devices ps这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 若有多台安卓设备,可以通过在adb后面加上 -s <设备id&g ...
- ADB 命令和monkey
一.概要 1.什么是adb? adb全称为Android Debug Bridge,就是起到调试桥的作用.顾名思义,adb就是一个debug工具. 2.adb工作原理 不是很理解?那就来看看它的工作原 ...
随机推荐
- mongoose 的 model,query:增删改查
简介 mongoose是node.js的一个操作mongodb的模块,比起之前mongodb模块,只需要在开始时连接,不需要手动关闭,十分方便. 连接mongodb 首先你需要安装mongodb.有了 ...
- 《利用python进行数据分析》读书笔记--第九章 数据聚合与分组运算(一)
http://www.cnblogs.com/batteryhp/p/5046450.html 对数据进行分组并对各组应用一个函数,是数据分析的重要环节.数据准备好之后,通常的任务就是计算分组统计或生 ...
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- R-RMySQL包介绍学习
参考内容: RMySQL数据库编程指南R语言使用RMySQL连接及读写Mysql数据库 RMySql包安装和加载优点问题,试着根据提示简单安装和加载可以使用,后续再查询资料解决. 3.2.1 连接数据 ...
- iOS的多版本配置(版本分离,多环境配置)
前几天公司说一个客户要搞一个app,我说搞呗,跟我啥关系...他说,就是从咱的app上搞,什么都一样,就是一些logo啥的不一样.我一开始感觉,那就改改logo呗,后来一想,凑,百度推送,友盟统计,B ...
- 苹果微信input输入框被键盘遮挡
最近一个项目,input输入框需要在页面的最下面(position:fixed),这样,当键盘获取焦点的时候, 苹果自带键盘不会挡住输入框,但是搜狗输入法的键盘就会挡住.可以用以下方法解决: docu ...
- this 的值到底是什么?
你可能遇到过这样的 JS 面试题: var obj = { foo: function(){ console.log(this) } } var bar = obj.foo obj.foo() // ...
- 2014最后一天,好烦!这个问题从来没遇到过!网上查找了很多办法都没解决!并且no wifi 了!
org.hibernate.NonUniqueObjectException: a different object with the same identifier value was alread ...
- [Jenkins] Jenkins配置自动构建时间代表意义
- PPTP协议
PPTP协议 PPTP(Point-to-Point Tunneling Protocol)点对点隧道协议是PPP协议的一种扩展,它将PPP帧封装进IP包中,通过IP网络进行传输.它通过PPTP控制连 ...