Android Monkey测试详细介绍(上)
Monkey介绍
1、Android Monkey是什么?
Monkey是什么:
Monkey是Google提供的一个用于稳定性与压力测试的命令行工具。
Monkye路径:
Monkey程序是Android系统自带的
路径: /sdcard/system/framework/Monkey.jar
启动脚本路径:/system/monkey
2、Monkey环境变量的配置
Monkey是由adb命令启动,故只要配置adb环境(windows环境为例)
•下载AndroidSDK,解压
•将SDK目录下的platform-tools和tools目录配置到系统环境变量中
•打开cmd窗口,输入adb,有adb帮助信息则配置成功
3、Monkey如何运行
命令格式:
>adb shell monkey [option] <count>(注意:中括号是可选参数,尖括号是必填参数)
>adb shell
>monkey [optinon] <count>
保存Monkey运行log
monkey [optinon] <count> 1>/mnt/sdcard/monkey.txt 2> /mnt/sdcard/error.txt
提示系统为只读系统,解决办法:adb shell下mount -o remount rw /
如果运行过程中没出现异常,则monkeyerror.txt里面的内容为空
pc端保存方法:
Monkey 基本参数与事件参数
1、Monkye基本参数设置
2、Monkey测试的约束条件
可以看到模拟器上已经在运行邮件和时钟的测试
AndroidManifest.xml中的<category android:name="android.intent.category.LAUNCHER" />表示安装的app在桌面上能找到对应的图标,则可以用-p进行测试;如果将<category android:name="android.intent.category.LAUNCHER" />去掉,则安装的app在桌面上没有图标,需要在AndroidManifest.xml中加上
<category android:name="com.example.helloworld.MONKEY" />,使用-C进行测试
3、Monkey发送的事件类型和频率
①如果不使用-s,每次生成的seed值不一样;加了-s每次生成的seed是一样的,如果命令运行出错,可以用相同的命令进行复现;如果没加-s只能根据每个事件对于的百分比找出相应的事件
②固定延时200:adb shell monkey -p com.android.email --throttle 200 -v -v 100
随机延时需要配合固定延时使用,不能单独使用:adb shell monkey -p com.android.email --throttle 5000 --randomize-throttle -v -v -v 100
Monkye调试参数
ANR:
•在5秒内没有响应输入的事件(例如,按键按下,屏幕触摸)
•BroadcastReceiver在10秒内没有执行完毕
Crash:
•异常退出
Monkey 黑白名单
黑名单:不测试的应用
白名单:只测试这部分应用
注意不能同时设置黑名单和白名单
将手机中的所有应用保存到packages.txt
取部分应用存到backlist.txt,将backlist.txt文件push到/data/local/tmp/目录下
运行整机应用,黑名单里面应用将不会被执行:
adb shell monkey --pkg-blacklist-file /data/local/tmp/blacklist.txt --throttle 200 200
同理,可将只需运行的应用添加到whitelist.txt,将whitelist.txt push到/data/local/tmp/目录下,运行adb shell monkey --pkg-whitelist-file /data/local/tmp/whitelist.txt --throttle 200 200,这时将只会运行白名单里面的应用。