一、Monkey简介:
Monkey是Android中的一个命令行工具,可以运行在模拟器里或者现实设备中,向系统发送伪随机的用户事件流(点击、滑动、Application切换、横竖屏、应用关闭)实现对正在开发的应用程序进行压力测试。monkey测试是一种为了测试软件的稳定性,健壮性的快速有效的方法。只针对Activity做测试,不能对Service做测试。
二、质量要求:
版本release(发布)前,Monkey跑出来的结果中crash要为0,final release前,Monkey跑完的总次数应为10W,结果里不允许有nullPointException\crash
出现。
三、Monkey命令参数:
1> -p
用于约束限制,用此参数指定一个或者多个包,指定包之后,monkey将只允许启动指定app,如果不指定包,monkey将启动系统中所有的app 。
例:指定一个包 monkey -p com.htc.weather -v 1000
指定多个包 monkey -p com.htc.weather -p com.htc.pdfreader -p com.htc.photo.widgets -v 1000
不指定包 monkey -v 1000
2> -v
用于指定反馈的信息级别(日志的详细程度),分为三个级别,级别越高,日志越详细。
level 0:
例:monkey -p com.htc.weather -v 1000
level 1:
例:monkey -p com.htc.weather -v -v 1000
level 2:
例:monkey -p com.htc.weather -v -v -v 1000
3> -s
指定伪随机数生成器的seed值,如果seed相同,则两次monkey 测试产生的事件序列也相同。
例: monkey -p com.htc.weather -s 35 -v 1000
4> --throttle(毫秒)
制定每个事件结束后的间隔时间,降低系统压力。(如果不指定系统会尽快的发送事件序列)
例:monkey --throttle 300
5> 定制事件
--pct-touch:指定触摸事件的百分比,例:--pct-touch 5% , 其他相关的:
--pct-motion <percent> (滑动事件)
--pct-motion <percent> (滑动事件)
--pct-trackball <percent> (轨迹球事件)
--pct-nav <percent> (导航事件 up/down/left/right)
--pct-majornav <percent> (主要导航事件 back key 、 menu key)
--pct-syskeys <percent> (系统按键事件 Home 、Back 、startCall 、 endCall 、 volumeControl)
--pct-appswitch <percent> (activity之间的切换)