标题六、monkey(1)

一、简介
Monkey是一个程序,运行在您的模拟器或设备上,并生成伪随机的用户事件流,如点击,触摸或手势,以及一些系统级事件。 您可以使用Monkey以随机但可重复的方式对您正在开发的应用程序进行压力测试。

二、所在路径
Monkey程序是Android系统自带,位于Android系统的/system/bin目录的Monkey文件。其jar包是位于Android系统的/system/framework目录的Monkey.jar文件。通过adb命令来启动Monkey。

三、处理的三种情况
根据命令行参数的配置,生成伪随机的事件流,并在Android设备上执行对应的测试事件。同时,Monkey还会对测试系统进行监测,当出现以下三种情况时会进行特殊处理:
如限定了Monkey运行在特定包上,当监测到试图转到其他包的操作,将对其进行阻止。
如应用程序崩溃或接收到任何失控异常,Monkey将记录对应的错误日志,并根据命令行参数判断是停止运行还是继续运行。
如果应用程序发生了程序无响应(application not responding)的错误,Monkey将记录对应的错误日志,并根据命令行参数判断是停止运行还是继续运行。
按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。

四、monkey命令
adb shell monkey [options]
[options] 是指monkey可传入的参数,是可选项(如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。
 是指随机发送事件数。如:输入100就是执行100个伪随机事件,为必选项。

五、monkey事件
11大事件,分别是触摸事件、手势事件、二指缩放事件、轨迹事件、屏幕旋转事件、基本导航事件、主要导航事件、系统按键事件、启动Activity事件、键盘事件、其他类型事件。
1.触摸事件:由一组Touch(ACTION_DOWN)和Touch(ACTION_UP)事件组成,在手机上看到实际操作类似于点击。
2.手势事件:按下、随机移动、抬起,由一个ACTION_DOWN事件、一系列ACTION_MOVE事件和一个ACTION_UP事件组成的。实际操作是一个没有拐弯的直线滑动操作。
3.二指缩放事件:两处同时按下,并同时移动,最后同时抬起的操作。一个ACTION_DOWN事件和一个ACTION_POINTER_DOWN事件,即模拟两个手指同时点下;中间是一系列的ACTION_MOVE事件,即两个手指同时在屏幕上直线滑动;结束是由一个ACTION_POINTER_UP事件和一个ACTION_UP事件。
4.轨迹事件:由一个或多个随机的移动组成的,有时会伴随着点击。包含曲线滑动操作。由一系列的Trackball(ACTION_MOVE)事件组成。
5.屏幕旋转事件:一个隐藏事件,Android手机的横屏和竖屏切换。由一个rotation事件组成,其中degree表示的是旋转方向,顺时针旋转,0表示旋转90度的方向,1表示旋转180度的方向,2表示旋转270度的方向,3表示旋转360度的方向。
6.基本导航事件:指点击方向输入设备的上、下、左、右按键的操作,一般用得比较少。由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成。
7.主要导航事件:指点击“主要导航”按键的操作,这些按键通常会导致UI界面中的动作,如键盘的中间键、回退按键、菜单按键。由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的按键就是中间键和菜单键。
8.系统按键事件:点击系统保留使用的按键的操作,如点击Home键、返回键、音量调节键等。该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的就是上面说到的几个系统按键。
9.启动Activity事件:指在手机上启动一个Activity的操作。执行一个startActivity()方法,作为最大限度上覆盖被测包中全部Activity的一种方法。是由一个Switch操作组成的,从手机上看,上面的操作实际是打开了com.android.settings这个应用的一个com.android.settings.Settings的Activity界面。
10.键盘事件:一些与键盘相关的操作。比如点击输入框、键盘弹起、点击输入框以外区域、键盘收回等。主要是键盘的打开和关闭操作,
11.其他类型事件:括了除前面提到的10种事件外其他所有的事件,如按键、其他不常用的设备上的按钮等。该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的按键就是其他的一些系统按键,如字母按键、数字按键等。

猜你喜欢

转载自blog.csdn.net/qq_38509926/article/details/82918905