Android APP压力测试(三)
之Monkey日志自动分析脚本
前言
上次说要分享Monkey日志的分析脚本,这次贴出来分享一下,废话不多说,请看正文。
[目录]
1、Monkey日志分析脚本
1)、脚本文件:Monkey_Log分析.bat
@ECHO OFF ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: ECHO.:: 分析Monkey日志 :: ECHO.:: 作者:Findyou :: ECHO.:: 版本 V1.0.1 :: ECHO.:: 时间:2014.08.26 :: ECHO.::::::::::::::::::::::::::::::::::::::::::::::::: REM 方法一:手动设置Monkey日志路径 SET monkeyLogFile=F:\Monkey\20140808\FindyouV1.0.0\20140825181801_monkey.log REM 方法二:直接将Monkey日志拖到此bat文件上 IF NOT "%1"=="" SET monkeyLogFile=%1 ECHO.[ INFO ] Monkey日志: %monkeyLogFile% ECHO.[ INFO ] 开始分析 SET blnException=0 ECHO. ECHO. REM 如果觉得分析太快,没有感觉,把下面注释去掉假装分析中,有停顿感 REM ping -n 2 127.0.0.1>nul ::ANR日志 FOR /F "delims=" %%a IN ('FINDSTR /C:"ANR" %monkeyLogFile%') DO ( SET strANR=%%a ) ::崩溃日志 FOR /F "delims=" %%a IN ('FINDSTR /C:"CRASH" %monkeyLogFile%') DO ( SET strCRASH=%%a ) ::异常日志 FOR /F "delims=" %%a IN ('FINDSTR /C:"Exception" %monkeyLogFile%') DO ( SET strException=%%a ) ::正常 FOR /F "delims=" %%a IN ('FINDSTR /C:"Monkey finished" %monkeyLogFile%') DO ( SET strFinished=%%a ) IF NOT "%strANR%" == "" ( ECHO.[ INFO ] 分析Monkey日志存在: ANR ECHO.[ INFO ] ------------------------------------ ECHO. "%strANR%" SET /a blnException+=1 ECHO. ) IF NOT "%strCRASH%" == "" ( ECHO.[ INFO ] 分析Monkey日志存在: CRASH ECHO.[ INFO ] ------------------------------------ ECHO. "%strCRASH%" SET /a blnException+=1 ECHO. ) IF NOT "%strException%" == "" ( ECHO.[ INFO ] 分析Monkey日志存在: 异常 ECHO.[ INFO ] ------------------------------------ ECHO. "%strException%" SET /a blnException+=1 ) IF NOT "%strFinished%" == "" ( ECHO.[ INFO ] 分析Monkey日志存在: 执行成功标记 ECHO.[ INFO ] ------------------------------------ ECHO. "%strFinished%" ECHO. ) ELSE ( IF %blnException% EQU 0 ECHO.[ INFO ] 分析Monkey日志结果: Monkey执行异常中断,请重新执行Monkey脚本! ECHO. ) REM 如果blnException不为0,说明存在异常,改变字体为淡紫色 IF %blnException% NEQ 0 ( Color 0D ECHO.[ INFO ] 分析Monkey日志结果:存在异常日志,请手工再仔细检查! ECHO. ) ELSE ( ECHO.[ INFO ] 分析Monkey日志结果:正常 ECHO. ) ECHO. ECHO.[ EXIT ] 按任意键关闭窗口... PAUSE>nul
2)、【使用方法】a、保存脚本:Monkey_Log分析.batb、执行脚本:方法一:手动设置Monkey日志路径,修改脚本中的monkeyFile变量
方法二:直接将Monkey日志拖至bat文件上★温馨提示★
*、请定期手工检查一下结果
2、脚本原理
1)、Monkey结果分析理论:
a、请见本系列的第一篇 《Android APP压力测试(一)之Monkey工具介绍》 中的第4节:Monkey测试结果分析
2)、脚本核心思想:
a、理论支撑,请见上方 1)
b、搜索关键字
c、通过关键字判读有无异常
★温馨提示★
*、不足,如果Monkey命令存在调试选项如:--ignore-crashes --ignore-timeouts,此脚本还需要增加判断条件,如有兴趣可以自己再优化增强。
3、操作记录
1)、将Monkey日志拖至bat文件上
2)、脚本执行结果
a、正常
b、异常