Battery-Historian简介

Battery-Historian是谷歌推出的一款专门分析Bugreport的工具,是谷歌2015年I/O大会上推出的一款检测运行在android5.0(Lollipop)及以后版本的设备上电池的相关信息和事件的工具,是一款对于分析手机状态,历史运行情况很好的可视化分析工具。对应的软件包和使用简介参考:https://github.com/google/battery-historian

耗电量指标

待机时间是关键指标

提升用户体验

通过不同的测试场景,找出APP高耗电量的场景并解决

环境准备

1、历史原因,historian.py脚本支持Python2,下载安装Python2配置环境变量

2、go 环境安装(下载:https://golang.org/doc/install),配置GOPATH and GOBIN到环境变量

     GOPATH:配置GO工作目录(D:\workspace\go\src)
     GOBIN:配合Go安装目录

3、jdk安装配置环境变量

4、git安装配置环境变量

安装步骤,参考https://github.com/google/battery-historian官网

1、打开git命令窗口,切换到GOPATH目录

2、go get -d -u github.com/google/battery-historian/...

3、cd battery-historian

4、go run setup.go

5、go run cmd/battery-historian/battery-historian.go

备注:进行步骤5前,需要修改battery-historian目录下的setup.go文件,把closureCompilerVersion 改为 "20190513"(只是最稳定版本)

因为不能FQ访问外网,会出现各种奇怪问题,可参考https://blog.csdn.net/shiyisay/article/details/112470978,文章作者整理很到位。

测试步骤

使用batterystats生成数据(adb自带batterystats)

使用Battery historian分析数据

batterystats收集数据步骤

1、清理耗电量数据
adb shell dumpsys batterystats --reset
adb shell dumpsys batterystats --enable full-wake-history(不用执行,默认就是开启状态,命名用途是收集电量等数据统计) 2、运行测试用例/手工操作
可功能测试时监控或者monkey、appCrawler等工具遍历 3、收集数据
Android7.0及以上版本:adb bugreport bugreport.zip
Android6.0版本:adb bugreport >bugreport.txt 4、上传数据
本地浏览器访问:localhost:9999,把zip或者txt文件数据上传 5、生成报告

备注:

1、涉及文件需求或更新,需要再次执行编译命令:go run setup.go

2、生成报告,需要执行go run cmd/battery-historian/battery-historian.go

3、编译与执行,全部在/workspace/go/src/github.com/google/battery-historian目录下

historian

进入Historian

X轴代表时间周期,默认以60s为一个周期

其对应指标含义:

battery_level:电量

plugged:充电状态及充电时间

screen:屏幕是否点亮

top:显示当前手机运行的app

status:电池状态信息,有充电、放点、未充电、已充满、未知等不同状态

遗留问题:https://www.google.com/jsapi 不能FQ,访问总是超时导致historian数据查看不了,如果用离线js,则报错404

问题截图

解决办法:docker安装

battery-historian耗电量测试的更多相关文章

  1. Battery Historian之App耗电量测试

    一.Battery Historian测试所需环境:Go+Git+Python+Java+Battery Historian源码 下载Battery Historian源码并且运行的步骤如下: 1.打 ...

  2. APP耗电量测试

    现象 APP耗电,导致电池续航能力不佳,如下图,在小米MIX2和iPhone X机型上后台静默一小时各应用的耗电排行: 基本概念 相对于PC来说,移动设备的电池电量是非常有限的,保持持久的续航能力尤为 ...

  3. 通过 Battery Historian 工具分析 Android APP 耗电情况

    电量统计模块概述 Android 从两个层面统计电量的消耗,分别为 软件排行榜 及 硬件排行榜.它们各有自己的耗电榜单,软件排行榜为机器中每个 App 的耗电榜单,硬件排行榜则为各个硬件的耗电榜单.这 ...

  4. Battery Historian for windows环境搭建

    Battery Historian for windows环境搭建 简介:Battery historian是一款通过上传bugreport文件分析用户手机中App的电池耗电情况的工具. Batter ...

  5. Docker安装使用battery historian

    apt-get insatll docker.io battery historian ubuntu下使用 首先要确保是google浏览器,然后用命令行 google-chrome --proxy-s ...

  6. Battery historian安装及使用

    在介绍Battery historian之前首先来介绍一下 Android adb bugreport 工具,bugreport是什么,怎么用? android系统想要成为一个功能完备,生态繁荣的操作 ...

  7. Android CPU耗电量测试

    Android CPU耗电量测试 在测试Android app时,不仅仅要关注app的功能,也好关注app的性能指标,cpu.内存.流量.电量等.简单介绍下电量测试中的cpu耗电. 影响耗电的因素 C ...

  8. iOS耗电量测试

    iOS耗电量测试 本文主要介绍的是使用Energy Diagnostics Instruments来进行iOS耗电量测试. 一.使用方法: 1)iOS 设置选项 ->开发者选项 ->log ...

  9. 【官网翻译】性能篇(四)为电池寿命做优化——使用Battery Historian分析电源使用情况

    前言 本文翻译自“为电池寿命做优化”系列文档中的其中一篇,用于介绍如何使用Battery Historian分析电源使用情况. 中国版官网原文地址为:https://developer.android ...

  10. 电量分析工具 Battery Historian 的配置及使用

    1.Building from source code(通过各种配置后从源码构建) 官方流程看似很麻烦,但一上手,很快就搞定,让我情何以堪. ps:以下均是参考官方及网友做的 copy https:/ ...

随机推荐

  1. 在linux中安装mysql5.7

    安装前准备: 确保你的CentOS6.10使用的镜像url是可被访问的!!(可参考文章:https://blog.csdn.net/qq_39946015/article/details/111086 ...

  2. python进阶之路3之数据类型

    内容概要 pycharm下载与使用 python语法之注释 python语法之变量与常量 python基本数据类型(先大致了解有哪些) pycharm下载与使用 1.该软件分为收费版和免费版 免费版本 ...

  3. JavaScript 中URL 查询字符串(query string)的序列与反序列化

    方法一: 在 JavaScript 中,可以使用 URLSearchParams 对象来处理 URL 中的查询字符串. 序列化(将 JavaScript 对象转换为查询字符串)可以使用 URLSear ...

  4. 音乐解锁工具v1.10.3,QQ音乐,网易云,酷狗音乐格式转换工具,ncm转mp3,kgm转mp3,kgma转mp3,mgg转mp3,mflac转mp3,qmc转mp3,xm转mp3,kwm转mp3

    现在主流的听歌软件开会员听歌和下载单曲已经是两套业务了,即使开了会员下载的单曲也只能用固定的播放器进行播放,不能使用其他软件播放. 目前QQ音乐.网抑云音乐.酷狗等会员歌曲下载后都不再是传统的音频文件 ...

  5. [C#]C++/CLI中^的含义

    例子 // here normal pointer P* ptr = new P; // usual pointer allocated on heap P& nat = *ptr; // o ...

  6. Java List集合排序

    二维 List 自定义排序 使用lambda表达式 import java.util.*; public class Main { public static void main(String[] a ...

  7. (21)go-micro微服务logstash使用

    目录 一 Logstash介绍 二 Logstash作用 三 Logstash工作原理 四 Logstash安装 1.拉取镜像 2.运行命令 3.查看是否运行 五 Logstash使用 六 最后 一 ...

  8. Java基础学习笔记-关键字、标识符、分隔符

    标识符(identifier),我的理解呢,简单来说就是一个常量或者变量的名字啦 命名规则: 只能以 字母..$ 这三种开头,后面的话就可以由字母..$和数字组成 不能用Java中的关键字 不能包含空 ...

  9. 基础文之-----typeof 和 instanceof

    为了巩固基础,我会通过实例来详细说明,让我们一起搞懂 typeof 和 instanceof. <!DOCTYPE html> <html lang="en"&g ...

  10. ng-alain组件st表格,实现点击表格行变色,或者渲染变色

    实现点击表格行变色 html文件 <st #st [data]="data" (change)="changeClick($event)" [column ...