StartMonkeyTest.bat

@echo off
adb root
adb remount
adb push busybox system/xbin
adb shell chmod 755 system/xbin/busybox

::==============配置monkey参数==================
  set touch=50
  set motion=15
  set trackball=0
  set nav=0
  set majornav=0
  set syskeys=5
  set appswitch=10
  set flip=0
  set anyevent=0

  set seed=%random%
::set seed=26755
  set THR=300
  set count=120000000
  set "level=-vvv"
  set "IgnoreCrashContent=--ignore-crashes --ignore-timeouts --ignore-security-exceptions"

::============依次设置app的package==============
set "app1=com.android.contacts"
set "app2= "
set "app3= "
set "app4= "
set "app5=com.android.settings"
set "app6=com.android.camera"
set "app7=com.android.mms"
set "app8=com.android.gallery"
set "app9= "
set "appA=com.android.alarmclock"
set "appB= "
set "appC= "
set "appD= "
set "appE= "
set "appF= "
set "appG=com.android.music"
set "appH=com.android.phone"
set "appI= "
set "appJ= "
set "appK="
set "appL="
set "appM="
set "appN="
set "appO="

set "appZ= "


::==============================================
set "LogSaveAs="
set "NeedMemInfo="
set "NeedBugReports="
set "IgnoreCrash="

set /p iLog=请确定Log保存位置, "1" 表示保存到电脑, "回车" 保存到手机:
if "%iLog%"=="1" (set "LogSaveAs=SaveAsPC") else set "LogSaveAs=SaveAsPhone"
echo %LogSaveAs%
echo.

set /p iMem=需要输出剩余内存数据吗? "1" 表示输出到电脑,"回车" 不输出:
if "%iMem%"=="1" (set "NeedMemInfo=start") else set "NeedMemInfo=::start"
echo.

set /p iBugReports=需要输出BugReports吗? "1" 表示输出到电脑,"回车" 不输出:
if "%iBugReports%"=="1" (set "NeedBugReports=start") else set "NeedBugReports=::start"
echo.

set /p iIgnoreCrash=忽略Crash和TimeOuts吗? "1" 表示忽略,"回车" 表示遇到crash就停止:
if "%iIgnoreCrash%"=="1" (set "IgnoreCrash=%IgnoreCrashContent%") else set "IgnoreCrash="
echo.

echo ==============================================================
echo                 请选择要测试的模块序号,然后按回车
echo ==============================================================
echo.
echo		1.联系人	2.浏览器		3.XXXX	
echo.
echo		4.日历		5.设置和应用管理	6.相机
echo.
echo		7.MMS		8.图片和视频		9.XXXX
echo.
echo		A.闹钟		B.地图			C.systemui
echo.
echo		D.XXXXX 	E.homeshell		F.计算器
echo.
echo		G.音乐		H.通话			I.文件浏览器
echo.
echo		Z.自定义	0.整机测试	
echo.
echo		Q.退出
echo.

:cho
set choice=
set /p choice=          请选择:
IF NOT "%choice%"=="" SET choice=%choice:~0,1%
if /i "%choice%"=="0" goto wholephone
if /i "%choice%"=="1" goto ToRunApp
if /i "%choice%"=="2" goto ToRunApp
if /i "%choice%"=="3" goto ToRunApp
if /i "%choice%"=="4" goto ToRunApp
if /i "%choice%"=="5" goto ToRunApp
if /i "%choice%"=="6" goto ToRunApp
if /i "%choice%"=="7" goto ToRunApp
if /i "%choice%"=="8" goto ToRunApp
if /i "%choice%"=="9" goto ToRunApp
if /i "%choice%"=="A" goto ToRunApp
if /i "%choice%"=="B" goto ToRunApp
if /i "%choice%"=="C" goto ToRunApp
if /i "%choice%"=="D" goto ToRunApp
if /i "%choice%"=="E" goto ToRunApp
if /i "%choice%"=="F" goto ToRunApp
if /i "%choice%"=="G" goto ToRunApp
if /i "%choice%"=="H" goto ToRunApp
if /i "%choice%"=="I" goto ToRunApp

if /i "%choice%"=="Z" goto ToRunApp
if /i "%choice%"=="Q" goto tocmd
echo 选择无效,请重新输入
echo.
goto cho
cmd


:wholephone
start GetLog.bat
%NeedBugReports% BugReports.bat
%NeedMemInfo% FreeMem.bat
echo %date% %time% >test_time.log
adb shell monkey --pct-touch %touch% %IgnoreCrash% --pct-motion %motion% --pct-trackball %trackball% --pct-nav %nav% --pct-majornav %majornav% --pct-syskeys %syskeys% --pct-appswitch %appswitch% --pct-anyevent %anyevent% -s %seed% %level% --throttle %THR% %count% |tee MonkeyTraceLog.log
goto tocmd

:ToRunApp
start GetLog.bat
%NeedBugReports% BugReports.bat
%NeedMemInfo% FreeMem.bat
echo %date% %time% >test_time.log
Setlocal EnableDelayedExpansion
adb shell monkey -p !app%choice%! %IgnoreCrash% --pct-touch %touch% --pct-motion %motion% --pct-trackball %trackball% --pct-nav %nav% --pct-majornav %majornav% --pct-syskeys %syskeys% --pct-appswitch %appswitch% --pct-anyevent %anyevent% -s %seed% %level% --throttle %THR% %count% |tee MonkeyTraceLog.log
goto tocmd



:tocmd
echo %date% %time% >>test_time.log
cmd


::======================Help========================
::[--pct-touch PERCENT] 	-------->0
::[--pct-motion PERCENT] 	-------->1
::[--pct-trackball PERCENT] 	-------->2
::[--pct-nav PERCENT] 		-------->3
::[--pct-majornav PERCENT] 	-------->4
::[--pct-syskeysPERCENT] 	-------->5
::[--pct-appswitch PERCENT] 	-------->6
::[--pct-flip PERCENT] 		-------->7
::[--pct-anyevent PERCENT] 	-------->8
::-p	指定package
::	--pkg-blacklist-file /sdcard/blacklist.txt 
::-v	信息级别
::-s	seed值
::--throttle<毫秒>		事件间的时延
::--ignore-crashes		此参数跳过程序crash,(Force&Close错误)
::--ignore-timeouts		跳过ANR错误,(Application No Responding)
::--ignore-security-exceptions	跳过许可错误,如许可证书,网络许可
::--kill-process-after-error	app发生错误时,停止运行并保持在当前状态,不会结束进程
::--monitor-native-crashes	指定是否监视并报告应用程序崩溃的本地代码
::--pct-{+事件类别} {+事件类别百分比}	指定每种类别时间的数目百分比
::--pct-touch {+百分比}		调整触摸事件的百分比,down-up事件
::--pct-motion {+百分比}	调整动作事件的百分比,down事件、一系列伪随机事件和一个up事件组成
::--pct-trackball {+百分比}	调整轨迹事件的百分比,一个或几个随机的移动组成,有时伴随有点击
::--pct-nav {+百分比}		调整基本导航事件的百分比,导航事件由来自方向输入设备的up/down/left/right组成
::--pct-majornav {+百分比}	调整主要导航事件的百分比,导航事件通常引发图形界面中的动作,如5-way键盘的中间按键、回退按键、菜单按键
::--pct-syskeys {+百分比}	调整系统按键事件的百分比,这些按键通常被保留,由系统使用,如Home,Back,StartCall,EndCall,音量控制键
::--pct-appswitch {+百分比}	调整启动Activity的百分比,在随机间隔里,Monkey将执行一个startActivity()的调用,作为最大程度覆盖包中全部Activity的一种方法	
::--pct-anyevent {+百分比}	调整其他类型事件的百分比,包括所有其他类型的事件,如按键,其他不常用的设备按钮等等
::--pct-anyevent 100 1000*	指定多个类型事件的百分比,各事件类型百分比不能超过100%
::	adb shell monkey -p com.htc.weather --pct-anyevent 50 --pct-appswitch 50 1000
::--pct-flip
::===================================================

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值