Android APP壓力測試(三)之Monkey日誌自動分析指令碼

來源:互聯網
上載者:User

標籤:android   style   blog   http   io   ar   color   使用   sp   

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分析.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、異常

 

 

Android APP壓力測試(三)之Monkey日誌自動分析指令碼

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.