【APP专项】monkey专项实践分析


一、什么是monkey专项压测?

monkey测试是Android平台自动化测试的一种手段,通过Monkey命令模拟用户触摸点击屏幕、滑动、系统按键等操作来对设备上的app进行压力测试,检测程序多久的时间会发生异常

adb shell monkey -p "包名" --throttle 300 --pct-touch 35 --pct-motion 41 --pct-syskeys 2 --pct-appswitch 20 --pct-anyevent 2 -s 2 -v -v 1000

 这条monkey命令是指:共产生1000次伪随机事件(包括触摸、按键、切换)等操作,每次间隔300ms。

#--pct-touch 35 点击事件占比%35
#--pct-motion 41 调整移动事件占比 41%
#--pct-syskeys 2 调整系统按键事件占比 2%
#--pct-appswitch 20 调整app切换事件占比 20%
#--anyevent 2 跳转除上面其他事件外占比 20%

二、monkey LOG分析方法

1、通过adb shell bugreport命令提取;

示例:

adb shell bugreport > C:\Users\86158\Desktop\1111\bugreport.log

2、MonkeyScreenLog.Log:保存Monkey测试过程、应用层错误信息,发生Native Crash时,在此文件也会有记录;

1)在MonkeyScreen.Log日志文件搜索关键词“Fatal”、“Crash”、“ANR”定位到发生Crash的详细堆栈信息,通过上下文初步判断发生问题的时间,进程pid等

2)检查dropbox目录下是否有相关crash日志信息,主要关注是否有以下4类crash错误信息:data_app_wtf,data_app_anr,data_app_crash,system_server_watchdog

LOG分析示例