Monkey
Monkey是Android SDK提供的一个命令行工具,可以运行在模拟器里或实际设备中,使用安卓调试桥(adb)来运行它,向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。
- Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar
- Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中的存放路径是:/system/bin/monkey
如何在模拟器中运行monkey:
前提条件:
安装Java (关于如何安装,不多说,自行百度。有很多教程)
从Monkey的概念中我们知道,如果我们要使用monkey这个工具,我们需要使用安卓调试桥adb这个东西,adb 全称是 Android Debug Bridge,就是起到调试桥的作用。用来操作android设备的。简而言之就是连接Android手机与PC端的桥梁。而这个工具存在于SDK中。所以如果想要使用Android Monkey,首先得安装Android SDK。
1. 首先下载对应版本的Android SDK。或者直接下载Android Studio也行 (Android SDK从属于Android Studio,个人理解相当于子于父的关系。)
2. 将下载好的zip源码包(个人推荐下载源码包,无需安装。只要设置换相关的环境变量即可)解压后,设置相应的环境变量:
变量名:ANDROID_HOME
变量值:E:\Android-SDK\android-sdk-windows
然后在path环境变量最后追加 ;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;
3. 设置好环境变量之后,Ctrl+ R打开一个命令行,输入adb.查看是否有下面的信息列出来。如果有则说明配置成功。
4. 配置好Android SDK之后,我们需要去对应Android_HOME路径下,双击运行SDK Manager,进入到Android SDK Manager控制台界面。
第一次打开这个控制台界面,页面会默认勾选上使用这个工具所需要的最基本的配置,如果没有特殊需要,直接点击Install packages按钮即可。该安装过程会下载一些资源,所以 需要等待一段时间。 (本人刚开始不明所以,勾选了Android 7.1到4.4的所有版本,直接导致下载了大半天还没下载完,后来查看发现下载的资源居然有好几十个G之大。如果只是个人学习研究,推荐Android 5.0.1和4.4.2的版本即可)
5. 所有所需要的资源安装完毕之后,返回到Android_HOME路径下,双击AVD Manager打开Android Virtual Device(AVD) Manager 的控制台界面,开始创建我们的第一个AVD。
AVD Name:自己取一个有意义的名字即可。
Device:根据需要自行选择。
Target:正常选完Device之后会自动选上对应的选项,如果不是特殊需要,建议不要擅自更改。像我这样的菜鸟,刚开始胡乱选择之后,有可能就导致创建不了AVD。
CPU/ABI:这块个人认为是最晦涩难懂的一项,如果对这块不了解的话,根本无从选择。选的不对,就有可能导致无法创建AVD。第一次接触的话,建议选择ARM(armeabi-v7a),这个个人理解应该是最低配置要求。
强烈推荐使用Intel的系统映像,但是还额外需要一个HAXM的加速器,需要自己手动安装。在SDK Manager的Extras下会提示不兼容,第一次进入SDK Manager时默认不会勾选上。安装后,才可以使用Intel的系统映像,而且创建之后的虚拟机运行相当流畅,相当于真机。否则卡的不行。执行monkey命令会导致ANR。
Skin: Skin with dynamic hardware controls
Front Camera: None
Back Camera: None.
6. 创建完AVD之后,点击Start,即可开启Android Emulator(安卓虚拟机)了。
7. 等待Android Emulator启动完毕之后,打开一个终端。输入:adb devices. 看到下面信息,说明你已经连接上了安卓虚拟机了。
8. 接下来,我们继续输入:adb shell. 进入到shell 控制台界面。输入:ls data/data. 查看里面的应用程序包 (能测试的应用程序包都在这个目录下面)。
9. 最后输入:monkey -p package.name -v 500. 就可以执行我们第一个monkey 命令了。
如何在实际设备上运行monkey:
1. 执行上面的1-3步,然后使用数据线将手机连接到PC端。
2. 确保手机连接到PC端,这个需要格外注意:连接上不仅仅是指手机插上PC端而已,如果你的手机是在没有允许设备调试的情况下连接的,那么连接上后,只是相当于一个U盘,而不能进行任何的调试。
3. 如果手机未打开开发者模式,你需要先让你的手机设置里能够显示出开发者模式选项,然后勾选允许调试。
4. 此时,当你再用数据线将手机连接到PC端的时候,就会提示是否允许下面这个PC端对你的设备进行调试。同意即可。
5. PC端将会安装该设备的驱动,提示驱动成功安装后,打开命令行,输入:adb devices。如果出现正确的提示信息,则表示连接成功。
6. 然后再执行上面8-9步的操作(需要手机被root,否则无法执行成功)。
此外,还可以借助一些工具如:豌豆荚或者手机助手的工具来帮你连接设备到PC端。