Android Monkey测试运行入门

一、了解Monkey与Monkey的环境配置

1、Monkey自动化测试了解

  Monkey是Android SDK里面的一个命令行工具,SDK指软件开发工具包Monkey会发送伪随机的用户事件流,适合对app做压力测试。通过Monkey程序模拟用户触摸屏幕、滑动Trackball(轨迹)、 按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常

  可以在PC和Android端执行, /system/framework/monkey.jar(Monkey程序)、/system/bin/monkey(shell脚本),在PC端通过CMD窗口命令“adb shell monkey {+命令参数}”来进行Monkey测试  

  adb shell :连接到KF(android)的终端shell

  Monkey的缺陷:虽然可以根据一个指定的命令脚本发送按键消息,但不支持条件判断,也不支持读取待测界面的信息来执行验证操作。

2、Monkey环境配置

(1)java JDK

JDK安装后需要配置系统环境,打开控制面板>系统>系统高级设置>环境变量里可以配置系统环境

首先新建一个环境JAVA_HOME,值为安装的jdk目录(博主的是C:\Program Files\Java\jdk1.8.0_161)

将这个路径添加到Path中,添加方式为

 %JAVA_HOME\bin%

%JAVA_HOME\jre\bin%

(2)SDK的adb工具

同样需要配置环境,新建变量Android,值为SDK的安装目录


同样需要把Android变量添加到path路径中

(3)在手机端测试一般需要手机root;如果在PC端测试,则需要一个Android模拟器,可以用AVD创建,也可以直接用一些常用的模拟器如夜神模拟器等

为了防止测试版本对不上,可以直接将SDK的adb.exe覆盖模拟器的adb工具,夜神模拟器的adb工具在安装目录的bin下,名为 nox_adb.exe

这里也配置环境变量,变量名为NOX_adb,值为adb的文件路径(博主的是C:\Program Files (x86)\Nox\bin)

同样将这个变量添加到path中

3、检验环境配置

打开cmd,依次输入java、javac、adb version显示如下




打开夜神模拟器,在设置>关于平板电脑里点击五次版本号进入开发者模式

在cmd里输入adb devices


看到这样的显示,说明adb可以正常检测到模拟器设备的连接,那么Monkey测试的准备工作就做好了

二、用Monkey对模拟器中的apk包测试

1、测试

输入 adb shell

用 cd data/data 进入模拟器包目录

用ls 查看做模拟操作的包名称(如:com.bilibili.fatego)


输入su 进入根用户模式

此时就可以用monkey命令对此目录下的包做测试了

比如我们输入一个命令:monkey -p com.bilibili.fatego -v 200

这个命令的意思是对fatego的界面做200次无规则的点击操作,可以看到模拟器上也同步显示操作现象

// 命令解读: monkey -p(指定测试的包名称)[包名称] -v(输出信息的级别,-v仅仅提供启动、测试完成与最终结果信息)[测试次数]

2、测试数据分析


测试的各种事件所占的百分比>>跳转到指定包执行>>事件动作和坐标信息为:


最后显示测试完成的信息:


3、导出测试信息

先用 exit; 退出shell,退回到电脑C:\Users\[用户名]>

输入命令:


这样就可以把日志输出到指定的目录下了