Monkey学习笔记<一>:Monkey命令使用&黑白名单


一、Monkey是什么

Monkey是Android自带的一个自动化测试工具,我们可以通过命令行向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),对应用程序进行压力和稳定性测试。

二、Monkey基本参数&调试参数

如果要使用monkey,可以采用以下两种方式启动Monkey(首先得确定电脑已经连接设备):

1.直接运行该命令
adb shell monkey [options] <count>

2.进入设备命令行,再执行monkey命令
adb shell
monkey [options] <count>

那么monkey具体的参数怎么使用呢,先让我们来认识它们:

 

事件参数:--randomize -throttle     代表在事件之间插入随机延迟,必须和--throttle参数一起用     

事件参数:除了上述表格中的八种外,另还有三个隐藏事件参数,总共11种事件可用

约定限制参数:注意如果有些app不想在桌面显示图标,在AndroidManifest.xml会把启动Activity的name注释掉

    //<category android:name="android.intent.category.LAUNCHER" />

这样用-p命令是无法启动Monkey的,解决方法是把这一行修改为

     <category android:name="android.intent.category.MONKEY" />

调试参数:如果需要在monkey测试过程中监控crash和anr,则可以使用 --ignore crashes 和 --ignore timeouts,运行完成后统计具体的次数和分析原因。

 

例子:

monkey -p 包名 --randomize -throttle --throttle 500 --ignore-crashes --monitor-native-crashes --ignore-timeouts --ignore-native-crashes --pct-touch 20 --pct-trackball 20 --pct-motion 20 --pct-flip 20 --pct-appswitch 15 --pct-anyevent 5 -v -v 50

 

三、Monkey黑白名单使用

Monkey还可以加一些特定的参数,指定只运行哪些包或指定不运行哪些包,这就是所谓的白名单和黑名单

①白名单:指定只运行哪些包

在本地编辑好whitelist.txt文件,文件里写入要运行的包名,格式如下:

com.android.browser

com.android.deskclock

...

...

 

adb push whitelist.txt   /data/local/tmp/
adb shell monkey --pkg-whitelist-file  /data/local/tmp/whitelist.txt
 
这样就可以只运行你写在whitelist.txt文件里的包了。
 
②黑名单:运行除了哪些包之外的其他所有包

在本地编辑好blacklist.txt文件,文件里写入要运行的包名,格式如下:

com.android.browser

com.android.deskclock

...

...

 

adb push blacklist.txt   /data/local/tmp/
adb shell monkey --pkg-blacklist-file  /data/local/tmp/blacklist.txt
 
这样就ok了。
 
ps:
//查看手机里所有的包名的命令:
adb shell pm list package 
//标准输出和错误输出
monkey [options] <count>   1>monkey.txt   2>error.txt
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM