1.前置条件
- 电脑上已完成ADB压测环境搭建
(参考: )
- 安卓手机上已安装待客户端,且网络环境正常;
2.Monkey压测
1.使用USB线完成电脑连接待测试终端设备,可以使用adb devices命令确认终端是否链接成功;(如果连接失败,在手机设置中打开开发者模式,使用命令连接:adb connect ip)
2.输入以下指令,设置随机点击100000次;
adb shell monkey -p appname --throttle 500 --pct-touch 60 --pct-motion 30 --pct-syskeys 5 --pct-appswitch 5 --ignore-crashes --ignore-timeouts --monitor-native-crashes -v -v -v 100000>d:\2019MMDD(10w).log
脚本说明:
- -p:指定包名,如果你指定一个或多个包,Monkey将只允许访问这些包中的Activity。
- --throttle <milliseconds> :作用:在事件之间插入固定的时间(毫秒)延迟,你可以使用这个设置来减缓Monkey的运行速度,如果你不指定这个参数,则事件之间将没有延迟,事件将以最快的速度生成。(注:常用参数,一般设置为300~500毫秒,原因是实际用户操作的最快300毫秒左右一个动作事件,所以此处一般设置为300~500毫秒。)
- --pct-touch <percent>:调整触摸事件的百分比。(触摸事件是指在屏幕中的一个down-up事件,即在屏幕某处按下并抬起的操作)
- --pct-motion <percent>:调整motion事件百分比。(motion事件是由屏幕上某处一个down事件、一系列伪随机的移动事件和一个up事件组成)
- --pct-syskeys <percent>:调整系统事件百分比。(这些按键通常由系统保留使用,如Home、Back、Start Call、End Call、音量调节)
- --pct-appswitch <percent>:调整Activity启动的百分比。(在随机的时间间隔中,Monkey将执行一个startActivity()调用,作为最大程度覆盖被测包中全部Activity的一种方法)
- --ignore-crashe:应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
- --ignore-timeouts:应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。
- --monitor-native-crashes:监视并报告Andorid系统中本地代码的崩溃事件
- -v:命令行上的每一个-v都将增加反馈信息的详细级别。比较常用的是-v -v -v,即最多详细信息,一般会保存到指定文件中供开发人员查找bug原因时使用。
3.分析压测日志
执行完毕,访问: d:\2019MMDD(10w).log,获取monkey日志并分析,可通过// CRASH 和// NOT RESPONDING关键字来检索是否出现crash或ANR;