一、准备工作:

•JDK
版本1.6.X
CLASSPATH=%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
JAVAHOME=C:\glassfish3\jdk
PATH=%JAVA_HOME%/bin;%JAVA_HOME%/jre/bin;
•ANDROID SDK
PATH=D:\android-sdk-windows\platform-tools;D:\android-sdk-windows\tools;
版本:随意(注意与你的AVD版本保持一致)
•模拟器
AVD版本(与你的SDK版本保持一致)
Eclipse版本最好选中手机开发版

注意:路径中不要含有中文;路径不要过深;文件名不要有特殊字符。以上3种情况均能造成命令执行时报错。

二、Android命令

简单版本

<1>adb shell monkey 100【设备随机执行100个事件】

<2>adb shell monkey –p com.android.contacts 100【设备在联系人模块执行100个事件】

<3>adb shell monkey –p com.android.contacts –v 100【设备在联系人模块执行100个事件,并输入基本日志】

<4>adb shell monkey –p com.android.contacts–v –v --throttle 300 100【设备在联系人模块执行100个事件,并输入详细日志,时间间隔为3秒】

高级版本

<5>adb shell monkey –p com.android.contacts–v –v --pct-touch 50 --pct-trackball 30 –throttle 300 100

【设备在联系人模块执行100个事件,并输入详细日志,时间间隔为3秒,touch事件占总事件50%trackball事件占总事件30%

<6>adb shell monkey –p com.android.contacts–v –v –pct-touch 50 --pct-trackball 30 –s 123456 –throttle 300 100

【设备在联系人模块执行100个事件,并输入详细日志,时间间隔为3秒,touch事件占总事件50%trackball事件占总事件30%

参数:-P:指定包名

-v:打印基本日志,即最简单的,还有-v-v-v-v-v,依次输出更为详细的日志

- -Throttle 参数:300(单位:毫秒)

- -pct:事件类型参数30%

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

补充:

<1>adb logcat :打印日志

<2>adb logcat ActivityManager:I *:S查看主Activity

<3>adb logcat *:E 查看日志中错误信息命令

<4>aapt dump badging xxx.apk 查看versioncode

<5>emulator -avd android2.2 启动模拟器

<6>android list targets 查看所有API

Monkey参数解析:

<1>adb shell monkey -help 查看Monkey帮助,显示所有参数

<2>adb shell monkey -s emulate5554 -s指定哪台手机运行Monkey,多用于PC端链接多台手机

<3>adb shell monkey –p com.android.contacts–v –v –pct-touch 50 --pct-trackball 30 –s 123456 –throttle 300 100 这里的-s表示伪随机数,多用于一次monkey测试时发现问题,用同一伪随机数值可以复现此问题。

<4>--throttle:时间间隔

<5>--pct-touch<percent>:点击事件流,后跟百分比

<6>--pct-motion<percent>:划屏时间流,后跟百分比

<7>--pct-trackball<percent>:老式手机滚动球,同<6>

<8>其他

--pct-nav<percent>

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

--pct-majornav<percent>

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

--pct-syskeys<percent>

调整系统按键事件的百分比(这些按键通常被保留,由系统使用,如HomeBackStartCallEnd Call及音量控制键)

--pct-appswitch<percent>

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

--pct-anyevent<percent>

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

-p<allowed-package-name>

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

-c<main-category>

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

--dbg-no-events

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

--hprof

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

--ignore-crashes

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

--ignore-timeouts

通常,当应用程序发生任何超时错误(“ApplicationNot 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. 海创软件组--20200712--Butterknife与自定义图标字体
  2. android textview 自动连接网址及修改默认点击事件
  3. 2011.06.23——— android 事件处理机制
  4. android ui事件分析
  5. Android(安卓)GestureDetector手势监听
  6. android点击事件的分发过程
  7. android手机打电话代码分析
  8. android SharedPreferences(供选项使用)
  9. Android事件处理第一节(View对Touch事件的处理)

随机推荐

  1. Android屏幕自适应详解
  2. Android(安卓)HandlerThread
  3. Android(安卓)的自定义Spinner组件实现方
  4. android studio 中设置apk的版本号
  5. 2011.07.11(3)——— android xliff字符串
  6. android中自定义attr,以及style杂谈
  7. android 技术文章个人搜索集锦
  8. 【Android】Android(安卓)Studio启动配置
  9. android中的menu和子menu小结
  10. Android错误信息汇总