APP性能测试--功耗测试

一、功耗测试基础
移动设备的电池电量是非常有限的,保持持久的续航能力尤为重要。另外,android的很多特性都比较耗电(如屏幕,GPS,sensor传感器,唤醒机制,CPU,连网等的使用),我们必须要慎重检查APP的电量使用,以免导致用户手机耗电发热,带来不良体验。
获取手机电池信息
adb命令:adb shell dumpsys battery
得到信息如下:
1 AC powered: false 2 USB powered: true 3 Wireless powered: false 4 status: 1 #电池状态:2:充电状态 ,其他数字为非充电状态 5 health: 2 #电池健康状态:只有数字2表示good 6 present: true #电池是否安装在机身 7 level: 55 #电量: 百分比 8 scale: 100 9 voltage: 3977 #电池电压10 current now: -335232 #电流值,负数表示正在充电11 temperature: 335 #电池温度,单位是0.1摄氏度12 technology: Li-poly #电池种类=

二、测试项:
a、测试手机安装目标APK前后待机功耗无明显差异。
 b、常见使用场景中能够正常进入待机,待机电流在正常范围内。
c、长时间连续使用应用无异常耗电现象。

三、软件功耗测试方法:
第一种基于android提供的PowerManager.WakeLock来进行;
第二种通过 adb shell dumpsys batterystates 来获取。

四、功耗测试方案
【1】 手工测试---adb命令测试功耗
流程:进入APP,定格画面,拔掉数据线,操作,插上数据线
1、进入手机进程:adb shell
2、清除历史数据:dumpsys batterystats --reset
3、根据包名查询UID:ps| grep excelliance(某个词,系统自动补全)
4、根据查到的UID查询数据:dumpsys batterystats | grep UID
5、等时间到了之后,通过下面命令来保存电池信息到本地:adb shell dumpsys batterystats > batterystats.txt(不能进入shell进程里面输出日志)
6、使用我们的battery-historian来生成我们可见HTML报告: python historian.py batterystats.txt > batterystats.html

【2】自动化测试---Python脚本
原理:同样使用adb命令来查询功耗,通过更改电池状态记录改变信息
电池状态(status):充电、放电、未充电、已充满、未知等不同状态。
1.改变手机电池状态
手机连接到电脑,默认为充电状态
切换手机电池为非充电状态: adb shell dumpsys battery set status 1
2. 改变手机电量
让手机电量显示百分百: adb shell dumpsys battery set level 100
让手机电量显示1: adb shell dumpsys battery set level 1
3. 软件角度模拟断开充电(实际上是充进电)
adb shell dumpsys battery unplug (注意:必须在andorid 6.0以上的版本)

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值