Monkey的常见用法

Monkey 的基本用法:

 

可以通过开发机器上的命令行或脚本来启动Monkey。由于Monkey运行在模拟器/设备环境中,所以必须用其环境中的shell来进行启动。可以通过在每条命令前加上

adb shell来达到目的,也可以进入Shell后直接输入Monkey命令。基本语法如下:

 

          $ adb shell monkey [options] 

   

如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500

个伪随机事件:

 

          $ adb shell monkey -p packageName -v 500 

说明:

-p

后为包名,一个-p后接一个包名,多个包需要多个-p;-v反馈信息的级别

Monkey命令选项参考:

1.--throttle <milliseconds> 在事件之间插入固定延迟。

通过这个选项可以减缓 Monkey的执行速度。如果不指定该选项,Monkey将不会被延迟,事件将尽可能快地被产成。

2.-c:

如果用此参数指定了一个或几个类别,Monkey将只允许系统启动被这些类别中的某个类别列出的Activity。如果不指定任何类别,Monkey将选择下列类别中列出的Activity: Intent.CATEGORY_LAUNCHER或Intent.CATEGORY_MONKEY。要指定多个类别,需要使用多个-c选项,每个-c选项只能用于一个类别.

3.-ignore-crash:

当应用程序崩溃或发生任何失控异常时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成.

4.-ignore-timeouts:

通常,当应用程序发生任何超时错误(如“Application Not Responding”对话框)时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成.

5.-ignore-security-exceptions:

通常,当应用程序发生许可错误(如启动一个需要某些许可的Activity)时,Monkey将停止运行。如果设置了此选项,Monkey将继续向系统发送事件,直到计数完成

6.-monitor-native-crashes:

监视并报告Android系统中本地代码的崩溃事件。如果设置了–kill-process-after-error,系统将停止运行

7.-kill-process-after-error:

如果程序出现错误,monkey将结束此程序进程

8.-v

将增加反馈信息的级别。
Level 0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息。

Level 1提供较为详细的测试信息,如逐个发送到Activity的事件。

Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity

Monkey实例:

 

#!/bin/bash
echo "Random monkey test begin!!"
package_name=$1
event_count=$2
loop_count=$3
# Check commandline
if [ $# -ne 3 ]; then
 echo "Usage: $0 <package_name> <event_count> <loop_count>";
 exit 1
fi
########################################
echo "the package_name is: $1";
echo "the event_count is: $2";
########################################
cnt=0
  
while [ "$cnt" -lt "$loop_count" ]
do
 cnt=$(($cnt+1))
 echo "========================Interation[$cnt]========================"
 monkey -p $1 --throttle 800  --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes -v $2
   
done
echo "Sucessful testing of monkey test for($1) done $3 times.";
exit 0;


 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值