官网资料:http://developer.android.com/tools/help/monkey.html

 

一、Monkey 介绍

Monkey 是 Android 的一个命令行工具,可以在模拟器或实际设备中,向系统发送命令,主要对系统进行性能测试,而非功能测试,因其随机性,无任何目的性。

 

二、Monkey 基本用法

# adb shell monkey [options] <event-count>

启动指定应用程序,并向其发生500个随机事件:

# adb shell monkey -p your.package.name -v 500

 

三、Monkey 实例

1. Eclipse 启动一个 emulator 或 实体机链接电脑

2. 在命令行输入:adb devices (确保连接正常)

3. 在命令行输入:adb shell (进入shell界面)

4. 查看apk包名:ls /data  (如果么有root权限会提示一下内容)解决方法:

A:刷机获取root   B:使用re-sign尝试获取包名

5. 输入命令测试:adb shell monkey -p your.package.name -v 500

 

四、命令选项参考

常规
–help
列出简单的用法。

-v
命令行的每一个-v将增加反馈信息的级别。Level 0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息。Level 1提供较为详细的测试信息,如逐个发送到Activity的事件。Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity。

事件
-s
伪随机数生成器的seed值。如果用相同的seed值再次运行Monkey,它将生成相同的事件序列。

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

–pct-touch
调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)。

–pct-motion
调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)。

–pct-trackball
调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)。

–pct-nav
调整“基本”导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)。

–pct-majornav
调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)

–pct-syskeys
调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键)。

–pct-appswitch
调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法。

–pct-anyevent
调整其它类型事件的百分比。它包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等。

约束限制
-p
如果用此参数指定了一个或几个包,Monkey将只允许系统启动这些包里的Activity。如果你的应用程序还需要访问其它包里的Activity(如 选择取一个联系人),那些包也需要在此同时指定。如果不指定任何包,Monkey将允许系统启动全部包里的Activity。要指定多个包,需要使用多个 -p选项,每个-p选项只能用于一个包。

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

调试
–dbg-no-events
设置此选项,Monkey将执行初始启动,进入到一个测试Activity,然后不会再进一步生成事件。为了得到最佳结果,把它与-v、一个或几个包约 束、以及一个保持Monkey运行30秒或更长时间的非零值联合起来,从而提供一个环境,可以监视应用程序所调用的包之间的转换。

–hprof
设置此选项,将在Monkey事件序列之前和之后立即生成profiling报告。这将会在data/misc中生成大文件(~5Mb),所以要小心使用它。

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

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

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

–kill-process-after-error
通常,当Monkey由于一个错误而停止时,出错的应用程序将继续处于运行状态。当设置了此选项时,将会通知系统停止发生错误的进程。注意,正常的(成功的)结束,并没有停止启动的进程,设备只是在结束事件之后,简单地保持在最后的状态。

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

–wait-dbg
停止执行中的Monkey,直到有调试器和它相连接。

 

更多相关文章

  1. android手势操作滑动效果触摸屏事件处理
  2. Android:Handler事件处理机制
  3. 我来说说Android(安卓)touch 系统的设计哲学
  4. android ListView Item和CheckBox、Button点击事件冲突的问题
  5. android手势操作滑动效果触摸屏事件处理
  6. Android(安卓)嵌套滑动机制(NestedScrolling)
  7. Android输入子系统之InputReader读取键盘消息过程分析
  8. Android事件分发机制
  9. 两分钟彻底让你明白Android中onInterceptTouchEvent与onTouchEve

随机推荐

  1. Android(安卓)中自定义View(二)
  2. Android解惑
  3. Android(安卓)RelativeLayout属性
  4. 如何调用Android隐藏API
  5. 坑爹的android碎片化
  6. Android系统服务概要
  7. android 相对布局属性说明
  8. Android核心分析 之十-------Android(安
  9. 【Android应用】【Shape使用总结】
  10. Android(安卓)RelativeLayout 的属性