性能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工作原理 不是很理解?那就来看看它的工作原 ...
随机推荐
- Java 基础 Map 练习题
第一题 (Map)利用Map,完成下面的功能: 从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队.如果该 年没有举办世界杯,则输出:没有举办世界杯. 附:世界杯冠军以及对应的夺冠年 ...
- 模块(configparser+shutil+logging)
一.configparser模块 1.模块介绍 configparser用于处理特定格式的文件,其本质上是利用open来操作文件. *注:(这里解释一下特定格式的文件) a.有section和opti ...
- Python Locust对指定网站“一键压测”
[本文出自天外归云的博客园] 前篇 前篇:Python Locust性能测试框架实践 本篇 承上——归纳过程 在前篇的基础上,我们可以利用Locust性能测试框架编写python脚本对指定网站或者接口 ...
- css+div解决文字溢出控制显示字数
一.一般的文字截断(适用于内联与块): Example Source Code [www.mb5u.com] .text-overflow {display:block;/*内联对象需加*/widt ...
- 4W1T教程1 如何使用幻灯片
第一步,读取类别为xxXX前五张幻灯片 <!-- 幻灯片循环开始-->{section name=banner loop=$banner} <li data-transition=& ...
- Mapreduce体系架构
Mapreduce也采用master和slave的架构设计.Jobtracker负责作业的初始化和分配 与任务节点进行通信,协调整个作业的执行. 一个job分为两种task(map/reduce),包 ...
- R语言拆分字符串
R语言拆分字符串 aaa<-"aa;bb;cc"ccc<-strsplit(aaa,split=";") bbb<- unlist(strsp ...
- Allegro 导入DXF文件,保留布好的线路信息
最近智能钥匙产品开发过程中,由于结构装配尺寸的偏差,需要对电路PCB外框OUTLINE进行缩小调整,并且USB插座定位孔改变. Allegro软件在线性绘制方面是有严重缺陷的,想绘制一个异形的板框比较 ...
- fzuoj1111Radar Installation (贪心)
题目大意是在海岸线布置n个雷达,要求雷达的范围要包含所有的小岛: 思路:逆向思维把小岛看成一个个范围,与海岸线的交集,从最左端的开始找 (贪心最左端的点),接着不用一个一个去遍历,直接用前一个的右端点 ...
- ASP.NET MVC bootstrap 3 ie 8兼容问题及错误解决(取消IE禁用IE脚本调试定位js文件错误)
因要做一个B/S架构的项目,使用MVC框架技术,本人不擅长页面设计美工,只好用bootstrap框架,在chrome内核系列的浏览器和IE 11中显示都没有问题,但是在 IE 8下显示却不正常,表格无 ...