app电量测试之Battery Historian介绍

Battery Historian

battery historian是一款用于检测与电池有关的信息和事件的工具,运行在Android 5.0 Lollipop (API level 21)及其之后。它会生成一张具有时间坐标的图纸,用户可以查看各种事件耗电时间。

安装

一、首先安装Go编程语言

  1. 点击下载【下载】;
  2. 安装Go;
  3. 配置GOROOT和GOPATH

    a. GOROOT的作用是告诉Go 命令和其他相关工具,在哪里去找到安装在你系统上的Go包,所以这里配置的是GO的安装目录

     

    b.GOPATH可以简单理解为是工程的目录,所以创建一个GO的工程路径

     

C.最后配置一下环境变量,把Go的bin目录放到path环境变量中

     

  4. 检查Go是否安装成功,打开命令行输入Go version

  

二、安装Git

  1. 点击下载【下载】;
  2. 按照步骤安装;
  3. 安装完成检查:命令行输入git version

   

  也可以直接打开git bash检查

  

三、安装Python

  1. 点击下载【下载】,注意仅支持python2.7
  2. 安装完成;
  3. 环境变量配置,添加Path的路径,是Python的安装路径
  4. 输入命令行 python –V(注意是大写V)检查是否安装成功

     

四、安装Java环境

  1. 点击下载【下载】;
  2. 完成安装。

五、下载Battery Historian源码并且运行

  1. git目录下点击git-bash.exe,输入命令行go get -d -u github.com/google/battery-historian/...

    **下载到GOPATH配置目录下

  2. 进入到$GOPATH/src/github.com/google/battery-historian目录下方
  3. 运行Battery Historian

    输入 $ go run setup.go

    # Compile Javascript files using the Closure compiler

    等待数分钟,如果仍然没有下载成功,可以手动下载,如下操作

    **下载【closure-library】和【closure-compiler】和【flot-axislabels】,解压放到GOROOT目录下third_party文件夹下方的的closure-compiler和closure-library和flot-axislabels文件夹 ../battery-historian\third_party;如果没有均手动创建

    b. go run cmd/battery-historian/battery-historian.go

    # Run Historian on your machine (make sure $PATH contains $GOBIN)

    $ go run cmd/battery-historian/battery-historian.go [--port <default:9999>]

  4. 检查/battery-historian是否运行,登录网址 http://localhost:9999查看

生成bugreport

一、数据准备

1.windows cmd下执行以下命令,开启电池数据获取

adb shell dumpsys batterystats --enable full-wake-history

2.windows cmd下执行以下命令,重置电池数据

adb shell dumpsys batterystats --reset

二、操作应用,生成bugreport

拔掉USB,然后对待测app进行相关操作,一段时间后,插上USB,运行一下两条命令。

1.windows cmd下执行以下命令,将bugreport信息保存到相应路径下,等待执行完毕

adb bugreport > bugreport.txt

2.windows cmd 下执行以下命令,将以上txt文档转化为html文件

python historian.py -a bugreport.txt >battery.html

注:现在不知道为什么会提示错误,找不到historian.py这个文件

上面的historian.py 就是用python写的脚本,所以需要python环境,可以从github上下载,以上命令执行完后,会发现两个文件,bugreport.txt和battery.html,这个时候用谷歌浏览器输入http://localhost:9999,上传bugreport.txt或者是直接打开battery.html就可以了,视图如下:

以上是V2.0版的,你可以自己切换到1版,现在来分析下各个参数的意义:

V2.0的指标更多,因为没有相应的参考文档,后面问问相关大神。所以只能先分析V1.0,可以参考http://blog.csdn.net/itfootball/article/details/44084159

最后我们还可以看到相关进程耗费的电量(估算值):

时间: 2024-08-06 04:56:38

app电量测试之Battery Historian介绍的相关文章

app电量相对专项测试

手机的耗电量主要是由手机的一些部件产生的,如cpu.wifi.gps等.所以耗电量主要集中在app上传.下载数据,检查位置.唤醒锁屏等. 现在稍微详细来了解下这些是怎么耗电的:1.WIFI(蜂窝式无线):开启wifi的时候,为了让硬件投入使用,(1)会出现一个唤醒耗电高峰,(2)接下来就是发送数据包消耗的电量,(3)然后接收数据包也需要很多电量,(4)完成执行工作后,硬件会保持一段时间内的开启,防止一小段时间内还有数据包需要接收.如下图所示: 2.锁屏唤醒:当解锁点亮屏幕的时候,会看到耗电有个很

Battery Historian for windows环境搭建

Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Battery Historian 1.0 通过python脚本转换成html文件,而新版本 Battery Historian 2.0 发布了,新版本带来了很多的改进:更清晰的报告,每个应用程序的摘要,更快的执行等等. 步骤 一.首先安装Go编程语言 点击下载[下载]: 安装Go: 配置GOROOT和GOPA

安装Battery Historian 2.0

需要:安装Git,安装GO语言环境,安装python语言环境 获取go的一些依赖如:proto,protoc-gen-go 以及 Battery Historian,命令如下 go get -u github.com/golang/protobuf/proto go get -u github.com/golang/protobuf/protoc-gen-go go get -u github.com/google/battery-historian 进入 %GOPATH%\src\github

性能优化之电量优化2-使用Battery Historian生成电量消耗报告

1 数据准备 1.1 先断开adb服务,然后开启adb服务 (a)adb kill-server 这一步很重要,因为当我们开发时做电量记录时会打开很多可能造成冲突的东西.为了保险起见我们重启adb.adb devices就会自动连接查找手机. 备注:mac可以直接使用adb命令:但是windows不行,需要进入到adt下:adt-bundle-windows-x86_64-20140702\adt-bundle-windows-x86_64-20140702\sdk\platform-tools

使用Battery Historian(android 5.0)

http://hukai.me/android-performance-battery/可以先参考这篇文章 1$ adb shell dumpsys batterystats > xxx.txt //得到整个设备的电量消耗信息 $ adb shell dumpsys batterystats > com.package.name > xxx.txt //得到指定app相关的电量消耗信息 2安装python 设置环境变量 3python historian.py xxx.txt >

android app自动化测试之UIAutomator

一.UIAutomator Android自动化测试工具有很多,但是要免费.易上手,本人觉得就直接使用Eclipse自带的UIAutomator就不错.测试人员无需跟开发要代码信息,只要手机上有安装之后的APP自己就能做出自动测试用例,况且一通百通,就算是不满足于UI测试的,找个简单易上手的先明白原理,再深入了解其它复杂工具也会轻松很多.何乐而不为呢? UIAutomator是Eclipse自带的用于UI自动化测试工具,可仿真APP上的单击.滑动.输入文本等操作. 在使用之前,需要安装好java

APP界面设计之尺寸介绍

1.尺寸以及分辨率 iPhone的界面尺寸不用多说,640*960是基本OK的,也可以是适应5S的640*1136,马上iPhone 6也快来了(随便吐槽一下网上曝的真机谍照,真是丑到离谱...),只要宽度不变都好说.至于像素问题,网页和移动的UI用72px就可以了,不必纠结. 2.界面基本组成元素 iPhone的APP界面一般由状态栏.导航栏.主菜单栏和中间的内容区域组成.因为宽度是固定的,所以设计开发起来很方便.下面我们说说这些“栏”的尺寸吧: 状态栏:显示运营商.信号和电量的区域,高度 4

Android App压力测试之Monkey

本文为慕课网<Android App压力测试>的学习笔记,视频地址 http://www.imooc.com/video/13007 Monkey是发送伪随机用户事件的工具. MonkeyScript实现自动测试的脚本,是一组可以被Monkey识别的命令集合,可以完成重复固定的操作.不支持截屏. MonkeyRunner提供一系列api操作. Monkey与MonkeyRunner的区别: Monkey:在adb shell中,生产用户或系统的伪随机事件 MonkeyRunner:通过API定

Appium+Python app自动化测试之脚本启动和停止Appium服务

研究了一段时间的Appium android app的自动化测试,工作中需要连接多台手机终端同时执行测试用例,我实现的方式是获取用例中需要执行用例的设备id个数以及实际连接到的设备数(通过adb devices获取),然后启动相应数量的Appium 服务,以便每个设备执行时并发进行并且互不影响.当然也可以通过selenium grid来实现,只是目前还在学习研究中,还是先把目前启动多个appium服务实现的方式记录下来. 一.Windows下启动单个appium服务 需要启动多个appium服务