手机连接PC,PC Cmd中输入“monkey -p 包名 -v 100”Monkey启动并开始执行自动化测试。但到底是怎么启动Monkey源码的呢?
Monkey源码编译成monkey.jar放在Android文件系统中。所在路径/system/framework/monkey.jar。
在Android文件系统/system/bin路径下有一个名为monkey的脚本。
monkey.jar程序就是由这个名为“monkey”的Shell脚本来启动执行的。
我们可以通过adb命令获取monkey脚本:adb pull /system/bin/monkey d:/monkey。
脚本如下:
base=/system #定义变量
export CLASSPATH=$base/framework/monkey.jar #配置环境变量
trap "" HUP
exec app_process $base/bin com.android.commands.monkey.Monkey $* #执行
当我们在命令行输入“monkey -p 包名 -v 100”的时候实际都做了什么?
当识别到monkey的时候即为启动以上monkey脚本,后面的参数则是要传递给monkey脚本的参数。
脚本中的$*则表示接收所有参数。即“-p 包名 -v 100”。
脚本中最后一句执行Monkey类中的main(String[] args)方法。并把接收的参数全部传递给main方法参数args数组中。
然后就从main(String[] args)方法开始执行Monkey源码了。
备注:以上进入Android系统文件目录以及获取monkey脚本均需要root手机