monkey基础

一、基本介绍

monkey是每个手机自带的工具,我们可以通过命令去唤醒它。它是一个伪随机事件(随机操作、乱点),可以测试APP的稳定性、抗压能力(压力测试)、app(客户端)的性能等,可以点击一些被人工忽略的区域,找到一些崩溃或异常的bug,发现一些内存溢出(OOM)的问题等。

二、一个问题记录

基本命令 [adb shell] monkey [options] < eventcount > , 例如:

>adb shell monkey 1000

如果monkey事件无法触发,或出现“ ** SYS_KEYS has no physical keys but with factor 2.0%. ” 这个提示,可以在命令中加入如下命令“ --pct-syskeys 0  ”,如图:

三、结束monkey进程

adb shell

#ps | grep monkey

#kill -9 PID号(第二个数字)

四、简单命令(常规选项、事件选项、约束选项、调试选项)

I.常规

1.-v                  ---常用参数

作用:命令行上的每一个 -v 都将增加反馈信息的详细级别

level0(默认),除了启动、测试完成和最终结果外,只提供较少的信息;

level1,提供了较为详细的测试信息,如逐个发送到Activity的事件信息;

level2,提供了更多的设置信息,如测试中选中或未选中的Activity信息。

II.事件

1.-s<seed>                                 ---常用参数

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

2.--throttle <milliseconds>            ---常用参数

作用:在事件之间插入固定的时间(毫秒)延迟,可以使用这个设置来减缓Monkey的运行速度,如果不指定这个参数,则事件之间将没有延迟,事件将以最快的速度生成。

3.这里将事件分为了11类型,分别为

0:触摸事件百分比,即参数--pct-touch                           ---常用参数

1:滑动事件百分比,即参数--pct-motion                         ---常用参数

2:缩放事件百分比,即参数--pct-pinchzoom                  ---常用参数

3:轨迹球事件百分比,即参数--pct-trackball                   ---不常用参数

4:屏幕旋转事件百分比

5:基本导航事件百分比,即参数--pct-nav                      ---不常用参数

6:主要导航事件百分比,即参数--pct-majornav             ---不常用参数

7:系统事件百分比,即参数--pct-syskeys                       ---不常用参数

8Activity启动事件百分比,即参数--pct-appswitch        ---不常用参数

9:键盘翻转事件百分比,即参数--pct-flip                       ---不常用参数

10:其他事件百分比,即参数--pct-anyevent                    ---不常用参数

 

III.约束

1.-p <allowed-package-name>    ---常用参数

作用:如果你指定一个或多个包,Monkey将只允许访问这些包中的Activity。如果你的应用程序需要访问这些包(如选择联系人)以外的Activity,你需要指定这些包。如果你不指定任何包,Monkey将允许系统启动所有包的Activity。指定多个包,使用多个 -p,一个 -p 后面接一个包名。

例:adb shell monkey -p com.Android.browser -v 100

2.--ignore-crashes        ---常用参数

作用:通常,应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成

3.--ignore-timeouts         ---常用参数

作用:通常,应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

4.--ignore-security-exception     ---常用参数

作用:通常,当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

5.--kill-process-after-error          ---常用参数

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

 

例子:

adb shell monkey -v -v -p com.xxx  --throttle 500 --ignore-crashes --ignore-timeouts --kill-process-after-error  1000

备注:参数没有先后顺序,一般在adb shell monkey 后就可以了

 

将日志导出到本地电脑:

adb shell monkey -v -v -p com.xxx  --throttle 500 --ignore-crashes --ignore-timeouts --kill-process-after-error  1000 >D:\rizhi\1.txt

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值