monkey应用场景
Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常
monkey是命令行工具
弱点:Monkey虽然可以根据一个指定的命令脚本发生按键消息,但其不支持条件判断,也不支持读取待测界面的值来执行验证操作。
monkey用来做什么? 可以用来做压力测试也可以用来做自动化测试
monkey什么时候用? 等产品稳定后,没有特别多的bug时候,一般会用monkey去测试待测应用的稳定性、健壮性(是否会发生崩溃、闪退);整机测试。
monkey命令格式
-s
用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。
命令:
Monkey测试1:adb shell monkey -p com.xxx.xxx -s 101 100 提前指定
Monkey测试2:adb shell monkey -p com.xxx.xxx -s 101 100 复现现象
说明:
两次测试的效果是相同的,因为模拟的用户操作序列(每次操作按照一定的先后顺序所组成的一系列操作,即一个序列)是一样的。操作序列虽然是随机生成的,但是只要我们指定了相同的Seed值,就可以保证两次测试产生的随机操作序列是完全相同的,所以这个操作序列伪随机的。
-v 用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别
-v 日志级别 Level0
说明:缺省值,仅提供启动提示,测试完成和最终结果等少量信息
-v -v 日志级别 Level1
说明:提供较为详细的日志,包括每个发送到Activity的事件信息
-v -v -v 日志级别Level 2
说明:最详细的日志,包括了测试中选中/未选中的Activity信息
--throttle<毫秒>
用于指定用户操作(即事件)间的时延,单位是毫秒
--randomize-throttle
在事件之间插入随机延迟,随机延迟范围为0到throttle设置的时间,单位为毫秒
--pkg-whitelist-file 白名单,后面接txt文件
1.第一步将设置的白名单的包名写到一个txt文档里面
2.第二步将这个文件拉到安卓机中,放到/data/local/tmp下面
adb push D:\whitelist.txt /data/local/tmp
--pkg-blacklist-file 黑名单,后面接txt文件
百分比事件
--pct-touch 调整点击事件的百分比
--pct-motion 调整移动事件的百分比
--pct-pinchzoom 调整两指缩放手势的百分比
--pct-trackball 调整轨迹球时间百分比
--pct-rotation 调整旋转事件的百分比
--pct-nav 调整导航事件的百分比
--pct-syskeys 调整系统按键的百分比
--pct-appswitch 调整app切换事件的百分比
--pct-flip 调整键盘唤出隐藏的百分比