Android APP压力测试(三)

之Monkey日志自动分析脚本

前言

上次说要分享Monkey日志的分析脚本,这次贴出来分享一下,废话不多说,请看正文。

[目录]

1、Monkey日志分析脚本

2、脚本原理

3、操作实例

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分析.bat
b、执行脚本:方法一:手动设置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、异常

Android APP压力测试(三)之Monkey日志自动分析脚本的更多相关文章

  1. Android APP压力测试(二)之Monkey信息自动收集脚本

      Android APP压力测试(二) 之Monkey信息自动收集脚本 前言: 上一篇Monkey介绍基本搬抄官方介绍,主要是为了自己查阅方便.本文重点介绍我在进行Monkey时如何自动收集相关信息 ...

  2. Android APP压力测试(一)之Monkey工具介绍

    Android APP压力测试(一) 之Monkey工具介绍 前言 本文主要介绍Monkey工具.Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动. ...

  3. Android App 压力测试 monkeyrunner

    Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试?第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. ADB ...

  4. Android自动化压力测试图解教程——Monkey工具

    [置顶] Android自动化压力测试图解教程--Monkey工具 标签: 测试androidprofiling工具测试工具文档 2012-04-01 10:16 38185人阅读 评论(10) 收藏 ...

  5. Monkey Android app稳定性测试工具之Monkey使用教程

    Monkey Android app稳定性测试工具之Monkey使用教程 by:授客 QQ:1033553122 由于篇幅问题,仅提供百度网盘下载链接: Android app稳定性测试工具之Monk ...

  6. Android APP压力测试-Monkey

    压力测试-Monkey学习 Monkey测试特点 什么是Monkey test? 如其名,像猴子一样,虽然什么都不懂,但是可以乱点一通,可以理解为压力测试.在规定的时间或次数范围内做任何随机的操作,随 ...

  7. android app 压力测试工具-monkey tool

    一.什么是Monkey? Monkey测试是Android自动化测试的一种手段,Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常. Monkey是A ...

  8. Android自动化压力测试图解教程——Monkey工具 (转)

    有时候我们需要对一个软件进行压力测试,检查该软件的性能.如果是人工进行测试的话,效率会低很多,而且会比较枯燥.这时,Android中的一个命令行工具Monkey就可以为我们减轻很多重复而又繁琐的工作. ...

  9. Android APP压力测试实战

    环境准备: Android SDK Python   压测实战步骤 1.在手机开发者工具中,将USB调试选上 2.确认手机,电脑成功连接(通过adb devices) 3.安装测试app(adb in ...

随机推荐

  1. 加载跨域的HTML页面AJAX

    //下面是谷歌浏览器处理方式,微信端,直接使用微信链接不作处理,,火狐浏览器另行处理... 借鉴地址:http://stackoverflow.com/questions/15005500/loadi ...

  2. Html5 中的新语义标签

    1.1 语义标签对于我们并不陌生,如<p>表示一个段落.<ul>表示一个无序列表<h1> ~ <h6>表示一系列标题等,在此基础上HTML5增加了大量更 ...

  3. FAT32 FAT区__FAT表解析

    一. FAT 表概述 位置: 紧跟在文件系统的“保留区”之后 : 有两个数据结构完全相同的FAT(FAT,File Allocation Tbale 文件分配表)组成. 作用: FAT表项,描述文件系 ...

  4. 【二】jekyll 的使用

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  5. WiFi流量劫持—— JS脚本缓存投毒

    在上一篇<WiFi流量劫持—— 浏览任意页面即可中毒>构思了一个时光机原型,让我们的脚本通过HTTP缓存机制,在未来的某个时刻被执行,因此我们可以实现超大范围的入侵了. 基于此原理,我们用 ...

  6. PostgreSQL配置优化

    硬件和系统配置 操作系统 Ubuntu13.04 系统位数 64 CPU Intel(R) Core(TM)2 Duo CPU 内存 4G 硬盘 Seagate ST2000DM001-1CH164 ...

  7. 基于Deep Learning 的视频识别方法概览

    深度学习在最近十来年特别火,几乎是带动AI浪潮的最大贡献者.互联网视频在最近几年也特别火,短视频.视频直播等各种新型UGC模式牢牢抓住了用户的消费心里,成为互联网吸金的又一利器.当这两个火碰在一起,会 ...

  8. spark 笔记

    官网 http://spark.apache.org/ 安装:http://dblab.xmu.edu.cn/blog/spark-quick-start-guide/ 教程 http://www.c ...

  9. Async All the Way

    Asynchronous code reminds me of the story of a fellow who mentioned that the world was suspended in ...

  10. 搭建Cordova开发环境

    Cordova是什么 Apache Cordova是一套设备API,允许移动应用的开发者使用JavaScript来访问本地设备的功能,比如摄像头.加速计.它可以与UI框架(如jQuery Mobile ...