--ignore-crashes(常用):忽略因为崩溃或者异常引起的停止运行。使用了此参数,就算应用程序崩溃,monkey依然会发送事件,直到计数完成,是长时间运行monkey稳定性测试的必备参数之一。
--ignore-timeouts(常用):忽略应用程序发生超时错误(ANR)。使用了此参数,就算应用程序发生ANR(Application No Responding)错误时,monkey依然会发送事件,直到计数完成,是长时间运行monkey稳定性测试的必备参数之一。
--ignore-security-exceptions(常用):忽略应用程序发生任何许可权限错误。使用了此参数,就算应用程序发生许可错误(例如证书许可,网络许可等,常常见于启动一个需要许可的Activity)时,monkey依然会发送事件,直到计数完成。
--monitor-native-crashes:监视并报告monkey运行时native code的崩溃事件,即指定要监视并报告Android系统中本地代码的崩溃事件。
--ignore-native-crashes:忽略因native code的崩溃事件,即要指定忽略Android系统中本地代码的崩溃事件。
--kill-process-after-error:在应用程序出错后通知系统杀死发生错误的进程。
--hprof:在monkey事件序列前后立即生成profilfing report(内存快照文件),通过对比前后的内存快照文件,协助定位内存泄漏问题。快照文件存在在data/misc目录,内存快照文件比较大,需要谨慎使用。
在使用过程中,我们常常使用--ignore-crashes和--ignore-timeouts参数。因为在长时间运行(比如下班后运行N个小时)的时候,可以保证在运行过程中遇到崩溃等问题后,还能执行剩余的命令,来避免刚开始执行时就遇到 Crash 和 ANR, 导致后续命令不会执行下去。
对大参林百科APP跑monkey及其说明:
1、adb shell monkey -p com.dsl.newwiki --ignore-crashes --ignore-timeouts --ignore-security-exceptions -v 100000
说明:指定com.dsl.newwiki包进行100000事件稳定测试,忽略Crash、ANR和许可错误,输出一级日志。
2、adb shell monkey -p com.dsl.newwiki -v -v -v --throttle 200 -s 1 --ignore-crashes --ignore-timeouts --ignore-native-crashes --pct-touch 70 --pct-motion 30 100000 2>/Users/caizhenzhen/Desktop/error.txt 1>/Users/caizhenzhen/Desktop/info.txt
说明:指定com.dsl.newwiki包进行100000事件稳定测试,指定seed值1,事件间隔200毫秒,忽略Crash、ANR和Android本地代码崩溃事件,指定触摸点击事件占比70%,滑动事件占比30%(为了降低monkey点到被测APP外的概率),输出二级日志保存到桌面的error.txt中,一级日志保存到桌面的info.txt中。
网友评论