bugreport
在Android系统测试中,经常要抓取log,而内置的bugreport功能无异是最方便全面的。那么问题来了,BugReport包含的信息虽多,但分析起来就成了麻烦,当然觉得麻烦的不只我一个,还有space2。这位前辈为此写了一个名为chkbugreport的开源工具,可以直接把对BugReport进行分析,好吧,我的麻烦被别人解决了。同时受同事启发,把chkbugreport工具做了个强化,实现一键分析BugReport ^_^,非常简单,就是把获取BugReport和分析BugReport一起实现,全当拿Python练练手。
前提:
- 已配置java环境
- 下载chkbugreport.jar(下载后请名字改成chkbugreport.jar)
方法:
- 将下面的代码保存到chkbugreport相同目录
- 运行
- # -*- coding: utf-8 -*
import os
from subprocess import Popen, PIPE
def devices():
'''
获取设备信息,根据不同状态给出返回值
1. 未连接设备时,返回值为 0
2. 已连接仅一台设备时,返回值为 1
3. 已连接多台设备时,返回值为 2
'''
resp = Popen(
'adb devices', shell=True, stdout=PIPE, stderr=PIPE).stdout.readlines()
cmd = []
for i in resp:
if cmd[-2] == cmd[0]:
print ('...... Devices not fond ......')
return 0
elif len(cmd) > 3:
print ('...... Fond %s devices ......' %
(len(cmd) - 2))
return 2
else:
print ('...... Device is fond ......')
return 1
def analysis_bugreport():
'''
获取Bugreport,并进行分析
'''
print 'getting bugreport......'
os.system('adb shell bugreport > %s\\bugreport.log' % os.getcwd())
print 'Got it.'
# Bugreport
os.system('java -jar chkbugreport.jar bugreport.log')
print 'Analysis complete.'
if __name__ == '__main__':
if devices() == 1:
analysis_bugreport()
# raw_input('Press Enter key to continue......')
- 国际惯例,感谢space2,还有我的同事郑 虹向我推荐chkbugreport。
其实原博主写了这么多,提取出来就两点东西:
1、adb shell bugreport > bugreport.log 获取系统的bugreport报告
2、将上面生成的报告和下载的chkbugreport.jar放在同一目录,并运行java -jar chkbugreport.jar bugreport.log
将会自动生成相应的html文件
相关阅读
数据分析师养成之路之keras篇:fine-tune学习小结
fine-tune学习小结: 大佬博客链接:https://www.cnblogs.com/andre-ma/p/8676186.html a.数据集小,和原数据集相似: <5000 -
PS:本人的处女座分析报告,文中有纰漏和不足的话希望大家可以多多包容和指点!!体验环境:体验产品名称:收留我软件版本:v2.3设备操作系统:i
看到小米新出的小米直达服务,激起我作为一个产品狗的好奇心,想来一探究竟。在手机上体验了相关服务后,以下发表自己的一点看法,思考有
一、行业分析市场分析团购是中国本地生活服务O2O领域中最为成熟的业务之一。经过近5年的发展,中国团购市场竞争格局逐步明朗,行业渗
push退订人数越来越多?你缺少这样一套push数据分析方法
判断push的好坏,不仅仅是文案内容,系统的数据统计和分析对于push运营的提升更为重要。消息推送(push)是APP运最优质的渠道,是一种快捷