最近公司开发一款app,想学习下monkey测试;
首先要明白测试的需求,也就是说更加贴近用户的操作;
1.触摸事件和手势事件是最常见的,所以需要通过--pct-touch 和--pct-motion将两个事件的占比调整为40%和25%;
目标应用会包含很多的activity,为了能覆盖大部分的activity,所以通过--pct-appswitch将activity切换的事件占比调整为10%;
还要考虑在测试过程不少横竖屏之间切换的问题,这个场景也必须关注,因此通过--pct=rotation将横竖屏部分调整为10%
2.使用-s参数来制定命令执行的seed值,monkey 会根据seed值生成对应的事件流,同一个seed 生成的事件流是完全相同的,这里指定了seed 值,是为了测试发现问题,便于进行问题复现.
3. 使用--throttle 参数来控制Monkey每个操作之间的时间间隔,指定操作之间的时间间隔,一方面是希望能更接近用户的使用,另一方面是不希望过于频繁的操作而导致系统的崩溃.,
4.使用 --ignore-crashes 和--ignore-timeouts参数使Monkey遇到意外时能继续执行测试,在执行Monkey测试时,会因为应用的崩溃或没有响应而意外终止,所以需要加限制参数,让其继续运行,能在日志记录相关信息,并继续执行后续的测试.
5.使用-v指定log 的详细级别,monkey 的日志有三个级别,级别越高,详细程度也越高.