Monkey测试可以发现的问题
Android平台应用程序可能产生以下四种Crash:
App层(JAVA应用程序):
1、Force Close Crash
2、ANR Crash
Native层(本地框架):
3、Tombstone Crash(Native Crash)
Kernel层(LINUX内核控件):
4、Kernel Panic
Monkey日志定位问题
1、monkey作长时间稳定性测试时,由于无人值守,所以测试的结果主要靠日志来看,典型Monkey测试日志文件输出,如下:
//主要Log文件说明
anr目录:从手机/data/anr导出的日志,保存发生anr crash时的相关信息
dontpanic目录:从手机/data/dontpanic/导出的日志,保存发送Kernel Panic时的相关信息
Tombstone目录:从手机/data/tombstones/导出的日志,保存发生Tombstone Crash时的错误信息
dropbox目录:从手机/data/tombstones/导出的日志,经过dropbox服务截取的部分tombstone错误信息
BugReportLog.log:保存Monkey测试过程、应用层错误信息,发送Native Crash时,在此文件也会有记录
2、通过日志定位问题步骤
(1)在MonkeyScreen.log日志文件搜索关键词“Fatal”、“Crash”、“ANR”定位到发生Crash的详细堆栈信息,或分析发生Crash前后的日志事件
(2)检查dropbox目录下是否有相关Crash日志信息,主要关注是否有以下4类Crash错误信息:data_app_wtf,data_app_crash,data_app_anr,system_server_watchdog
(3)检查tombstone目录是否有生成日志,有的话说明发生过native crash
(4)通过anr目录中的日志文件或BugReport.log日志文件,进一步分析问题原因
(5)通过上述日志信息,结合代码分析或通过搜索引擎寻找对应问题的可能错误,定位解决问题