一. throttle 参数
问题:当我们执行adb shell monkey 1000这个压力测试的时候,这个动作是非常快的,瞬间就完成了。如果我们需要在每一个执行动作中间加一个延时的话,可以使用throttle参数。
参数解释:指定事件之间的间隔。
命令:
adb shell monkey --throttle <millisecond>#毫秒(延时时间)
示例:如果我们要执行计算器10个事件,每个事件中间间隔1s,命令如下:
adb shell monkey -p com.android.calculator2 --throttle 1000 10
动态演示不好截图,大家自己试一下哈。
二. seed参数
问题:我们在做monkey做测试的时候都知道,monkey做的操作都是随机的,那如果我们发现了一个bug,当我们提交给开发后,开发要求我们复现这个bug,那么问题来了,monkey执行的是随机事件,你要我复现,我怎么能让monkey重新按照上次的顺序执行一边呢?
参数解释:执行随机生成数的seed值。
也就是说,monkey所谓的随机操作,是基于seed产生的。每一个seed值都会产生唯一的一个操作序列。只要两次操作的seed值是一样的,那么这两次的操作序列也是一样的,这样我们就能用monkey来复现随机发生的问题了。
命令:
adb shell monkey -s<seed> <event-count>
示例:仍然以计算器压测10次为例,seed值我们设置为100。第一次执行
C:\Windows\System32>adb shell monkey -p com.android.calculator2 -s 100 10
Events injected: 10
## Network stats: elapsed time=461ms (0ms mobile, 0ms wifi, 461ms not connected)
第二次执行(先把计算器历史记录清空并且推出)
C: