Android Monkey

Monkey使用流程:

1.下载安装Android SDK并配置环境。

2.打开CMD 直接输入monkey的命令使用就好

Monkey 命令:

一、基础参数

1.adb shell  monkey -help : 获取帮助

2.-p
指定要进行monkey测试的包,如果不使用参数,则会随机选择应用进行测试。
monkey测试1:adb shell monkey -p com.ceshi.ceshi.ceshi1000
monkey测试2:adb shell monkey -p com.ceshi.ceshi.ceshi-p com.tao.bao 1000

3.-s
伪随机数生成器的种子值,如果用相同的种子值再次运行monkey,将生成相同的事件序列。(该种子值对于Bug复现至关重要)
注:如果不指定种子值,系统会随机生成一个种子值,在出现Bug时该种子值会和Bug信息一起被输出,这也是为了便于复现该Bug

monkey测试1:adb shell monkey -p com.ceshi.ceshi–s 10 100               
monkey测试2:adb shell monkey -p com.ceshi.ceshi–s 10 100  

4.--throttle
在事件之间插入特定的延时时间(单位毫秒),这样做可以延缓monkey执行事件的速度,默认没有延时,monkey会以最快速度将指定的事件个数执行完。
注:很多博主说经验值是300模拟人的操作速度,我觉得100也不错,总不能一点压力没有吧

monkey测试1:adb shell monkey -p com.ceshi.ceshi --throttle 100 -v -v 1000

二、事件类型

5.--pct-touch
指定touch(触摸)事件的百分比,touch事件是由一个DOWN和一个UP组成,按下并抬起即是一个touch事件
注:若不指定任何事件的百分比,系统将随机分配各种事件的百分比

monkey测试1:adb shell monkey -p com.ceshi.ceshi --pct-touch 50 -v -v 1000

6.--pct-motion
指定motion(手势)事件百分比,motion事件是由屏幕上某处一个down事件、一系列伪随机的移动事件和一个up事件组成
注:移动事件是直线移动

monkey测试1: abd shell monkey -p com.ceshi.ceshi --pct-motion 50 -v -v 1000

7.--pct-trackball
作用:指定trackball(轨迹球)事件的百分比,滚动球事件由一个或多个随机的移动事件组成,有时会伴随着点击事件
注:移动事件可以是曲线移动,不常使用参数,但滚动球事件中包含曲线滑动事件,在被测程序需要曲线滑动时可以选用此参数。

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-trackball 20 -v -v 1000

8. --pct-nav
作用:指定基本的导航事件百分比。导航事件由方向输入设备的上下左右按键所触发的事件组成,即四个方向键

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-nav 20 -v -v 1000

9. --pct-majornav
作用:指定主导航事件百分比。这些导航事件通常会导致UI界面发生变化,如5-way键盘的中间键,返回按键、菜单按键

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-majornav 20 -v -v 1000

10. --pct-syskeys
作用:指定系统事件百分比。这些按键通常由系统保留使用,如Home、Back、Start Call、End Call、音量调节

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-syskeys 20 -v -v 1000

11. --pct-appswitch
作用:指定Activity启动的百分比。在随机的时间间隔中,monkey执行startActivity()方法,最大程度地覆盖应用中全部的Activity

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-appswitch 20 -v -v 1000

12. --pct-anyevent
作用:指定其他事件的百分比。包含所有其他事件,如按键、其他在设备上不常用的按钮等

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-anyevent  20 -v -v 1000

13. --pct-rotation
作用:旋转屏幕

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-rotation 20 -v -v 1000

13. --pct-rotation作用:旋转屏幕

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-rotation 20 -v -v 1000

14. --pct-flip
作用:键盘翻转

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-rotation 20 -v -v 1000

三、调试参数解析

15.--ignore-crashes
作用:忽略crashes,测试过程中发生crashes继续进行测试直到执行完指定的事件数,如果不忽略遇到crashesmonkey测试会停止

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-crashes -v -v 1000

16.--ignore-timeouts
作用:忽略ANR,测试过程中发生ANR继续进行直到执行完指定的事件数,如果不忽略遇到ANR测试也会终止

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-timeouts -v -v 1000

17.--ignore-native-crashes
作用:如果使用此参数,则忽略native层代码的崩溃

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-native-crashes -v -v 1000

18.--ignore-security-exceptions
作用:用于指定当应用程序发生许可错误时(如证书许可,网络许可等),Monkey是否停止运行。如果使用此参数,即使应用程序发生许可错误,Monkey依然会发送事件,直到事件计数完成

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-security-exceptions -v -v 1000

19.--ignore-native-crashes
作用:用于指定是否监视并报告native层发送的崩溃代码

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-native-crashes -v -v 1000

20.--ignore-security-exceptions
作用:用于指定当应用程序发生许可错误时(如证书许可,网络许可等),Monkey是否停止运行。如果使用此参数,即使应用程序发生许可错误,Monkey依然会发送事件,直到事件计数完成

monkey测试1: adb shell monkey -p com.ceshi.ceshi --ignore-security-exceptions -v -v 1000

21.--monitor-native-crashes
作用:用于指定是否监视并报告native层发送的崩溃代码。

monkey测试1: adb shell monkey -p com.ceshi.ceshi --monitor-native-crashes -v -v 1000

22.--kill-procress-after-error
作用:用于指定当应用程序发生错误时,是否停止其运行。如果指定此参数,当应用程序发生错误时,应用程序停止运行并保持在当前状态(注意:应用程序仅是静止在发生错误时的状态,系统并不会结束该应用程序的进程)

monkey测试1: adb shell monkey -p com.ceshi.ceshi --kill-procress-after-error  -v -v 1000

23.--hprof

作用:该选项设置后,将会在monkey事件序列前后立刻生成report,大小为大于5MB,存储在/data/misc

monkey测试1: adb shell monkey -p com.ceshi.ceshi --hprof  -v -v 1000

例子(将monkey日志输出到文件):
adb shell monkey –p com.ceshi.ceshi–-throttle100–-pct-touch50–-pct-motion50 –v  –v1000  >c:\monkey.txt

参考:
Android Monkey 压力测试 介绍 - 小坦克 - 博客园   小白
monkey android 教程,Android Monkey使用详解_Zhao Zachary的博客-CSDN博客  最全
Android monkey 命令详解_github_2011的博客-CSDN博客_android monkey    最细(含报告分析)
三、adb monkey(详细分析) - 沁霖 - 博客园  报告分析


10. --pct-syskeys

作用:指定系统事件百分比。这些按键通常由系统保留使用,如Home、Back、Start Call、End Call、音量调节

monkey测试1: adb shell monkey -p com.ceshi.ceshi --pct-syskeys 20 -v -v 1000

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容