性能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工作原理 不是很理解?那就来看看它的工作原 ...
随机推荐
- spring定时器配置
在此记录两种定时任务的配置: 一种是quart定时器: <1>配置xml文件(定时任务配置) <!--定时任务 --> <bean id="txfwBomc&q ...
- 蚁群算法简介(part2: 蚁群算法之构造路径)
蚁群算法主要可以分为以下几个步骤:首先,蚁群中的每只蚂蚁都根据地面上信息素浓度的大小找出一条从原点通向终点的遍历所有城市一次的路径(构造路径):然后每只蚂蚁沿着自己刚刚找到的路径回溯,在路径经过的各个 ...
- Nexpose下载安装注册一条龙
附上两个下载链接: Windows版本(64bit) : http://download2.rapid7.com/download/NeXpose-v4/NeXposeSetup-Windows64. ...
- 省市级联.net
初学javascript,编译省市级联,使用json在一般处理程序中编译,利用ajax传递数据到web前台 <html xmlns="http://www.w3.org/1999/xh ...
- centos7 docker zookeeper
docker run --name=zookeepertmp -i -t centos7/jdk7 /bin/bash cd /home wget http://apache.fayea.com/zo ...
- Javascript学习笔记:闭包题解(3)
代码: function assignHandler(){ var element=document.getElementById('someElementId'); element.onclick= ...
- Servlet开发详解
一.Servlet简介 Servlet是sun公司提供的一门用于动态web资源的技术 sun公司在其API中提供了一个Servlet接口,用户若想开发一个动态web资源,需要完成两个步骤: 编写一个J ...
- javascript中利用柯里化函数实现bind方法
柯理化函数思想:一个js预先处理的思想:利用函数执行可以形成一个不销毁的作用域的原理,把需要预先处理的内容都储存在这个不销毁的作用域中,并且返回一个小函数,以后我们执行的都是小函数,在小函数中把之前预 ...
- ListView下拉加载一(分页)
首先创建在主xml里放置一个listview列表,代码如下: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...
- Java输入输出流进阶
输入输出的内容是文本内容,考虑使用字符流. 输入输出的内容是二进制内容,考虑使用字节流. 凡是能用记事本打开并查看的内容称为文本文件,反之则为二进制文件. package ch15; import j ...