1. 什么是Monkey
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(eg:按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。
Monkey测试是一种可以测试软件的稳定性、健壮性的快速有效的方法。(可以想象成一只猴子啥都不知道,疯狂乱敲)
2. Monkey的特点
Android系统自带,使用java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar,Monkey.jar程序是由一个名为”monkey”的shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey
(1)在CMD窗口查看monkey.jar:adb shell ls /system/framework
(2)在CMD窗口查看monkey:adb shell ls /system/bin
3. Monkey命令的简单帮助
要获取Monkey命令自带的简单帮助,在cmd中执行命令: adb shell monkey –help
4. Monkey原理
Monkey事件注入机制
Monkey注入系统事件是通过framework层的hidenApi(如activitemanager, inputmanager, windowmanager)获取系统服务,如下:
触摸事件:包括屏幕以及物理键的触摸,滑动,点击事件。
Monkey通过InputManager.getInstance().injectInputEvent(keyEvent, int);构造对应的事件,然后调用该接口执行事件。
Activity事件:是指我们调用Android系统组件的事件。