推荐使用 读书导航 极客导航 :125啦极客导航(http://www.biumall.com/jike.html)
adb shell monkey -p com.xxxx.xxxx–pct-touch 30 –pct-motion 30 –pct-trackball 0 –pct-nav 0 –pct-appswitch 10 –pct-anyevent 10 -s 12867 –throttle 500 -v 200000 > 1.txt
1.1 Monkey基本命令:
执行单一apk:
monkey –p -c -s <限制语句> –throttle -v 执行次数> C:\monkey_test.txt
执行apk集合:
monkey –pkg-blacklist-file /data/blacklist.txt -c -s <限制语句> –throttle -v 执行次数> C:\blacklist_test.txt //执行黑名单以外的应用
或 monkey –pkg-whitelist-file /data/whitelist.txt -c -s <限制语句> –throttle -v 执行次数 > C:\whitelist_test.txt //执行白名单的应用
1.2 Monkey各项参数说明:
1、首先是约束限制的参数:
-p <包名>使用该参数制定一个包或者几个包,monkey将只允许系统启动这些包里的Activity;指定多个包,则需要使用多个-p参数,由此出现了apk集合的测试命令。
-c 用此参数指定一个或多个类别,同样,需要指定多个类别就需要多个-c参数;常见的类别有Intent.category.LAUNCHER、Intent.category.MONKEY。
2、其次是调试的参数:
–dbg-no-events设置此参数,monkey将执行初始启动,进入到一个测试Activity后,不会进一步生成事件。
–ignore-crashes设置此参数,应用程序崩溃或异常时(crash、exception),继续发送事件信息
–ignore-timeouts设置此参数,在应用程序超时(ANR)的时候,继续发送事件
–ignore-security-exceptions设置此参数,在应用程序发生许可证错误的时候(认证或证书异常),继续发送事件
–kill-process-after-error设置此参数,在应用程序出现错误后,将会通知系统停止发生错误的进程
–monitor-native-crashes设置此参数,监视并报告Android系统中本地代码的崩溃事件,如果设置”–kill-process-after-error”参数,系统将停止运行该进程
–ignore-native-carshes设置此参数,忽略本地代码导致的崩溃
3、最后是事件参数:
-s 伪随机数生成器的seed值,如果使用相同的seed值再次运行同一个包,它将生成相同的事件序列;注意,要生成相同的事件序列,需确保再次执行monkey时的起始界面相同。
– throttle 在事件之间插入固定的延迟事件,这个选项可以减缓monkey的执行速度
-v每一个-v将增加反馈信息的级别,级别越高,log的信息就越详细,一般采用三个-v;
Level0一个-v的命令,除了启动的提示、测试完成和最终结果之外,提供较少的信息
Level1两个-v的命令,提供较为详细的测试信息,如逐个发送到Activity的事件
Level2三个-v的命令,提供更加详细的测试信息,如测试中被选中或未被选中的Activity
–pct调整事件的百分比,具体如下:
–pct-touch 触摸事件百分比,就是log中down-up事件,发生在屏幕的某一个单一的位置
–pct-motion 动作事件的百分比
–pct-trackball 轨迹事件的百分比,拖动屏幕
–pct-nav 基本导航事件的百分比,如上下左右键
–pct-majornav 主要导航事件的百分比,如中间键,取消、确定或菜单引发的图形接口的动作
–pct-syskeys 系统按键事件,如Home、Back、StartCall、Endcall及音量控制键等
–pct-appswitch 启动Activity的百分比,在随机间隔中,执行一个startActivity()方法调用
–pct-flip 点击事件的百分比
1.3 APK集合测试的设置方法
APK应用集合分为黑名单和白名单,黑名单是指系统将执行除了黑名单中以外的apk;白名单则是只执行在白名单中的apk。
黑名单的设置方法:
a.创建一个名称为blacklist的txt文档,在文件中输入应用程序的包名,如mms应用,则在文件中输入com.android.mms;如果有多个应用程序不想被执行,则在文件中添加多个包名,注意包名与包名之间均用回车键。
b.将blacklist.txt的文件导入到手机的/data目录下,然后在执行monkey测试的时候使用–pkg-blacklist-file参数再加上blacklist文件的存储路径,其他的参数设置则和测试单一apk没有区别。
白名单的设置方法:
白名单的设置方法和黑名单的设置方法基本一致,只是在创建txt文档的时候,文件的命令应为whitelist。在执行monkey的时候,只执行白名单中的应用。
补充说明:在执行monkey测试的时候,如果将monkey测试的日志存放在手机的sdcard或者其他目录下,在monkey测试命令的最后加上一个&符号,则可以再不连接USB的情况下继续执行monkey。如:
monkey –p com.android.mms –s 100 –throttle 1000 –v –v –v 15000 > /mnt/sdcard/monkey_test.txt &
adb shell monkey --ignore-crashes --ignore-timeouts --ignore-security-exceptions --pct-trackball 0 --pct-nav 0 --pct-majornav 0 --pct-anyevent 0 --pct-syskeys 0 -v -v -v --throttle 500 1200000000 > D:\log.txt 2>&1 &
1.4 停止monkey
退出应用和拔掉数据线,都无法停止monkey测试,如需停止monkey测试,输入如下命令:
adb shell 进入 控制平台
ps | grep monkey
返回来的数字,即是monkey的进程号
kill 命令结束进程继续输入
本文前三部分摘抄于《Monkey测试基本命令》