monkey2-实践

一、APP的压测实践

准备Android sdk环境

准备python环境

step1:

在手机开发者选项中,讲usb调试选上

step2:确认手机和电脑连接

adb devices


step3:安装APP

adb install akita_1.4.15.apk

step4:随机事件(未定义到某个包上)

adb shell monkey 1000

step5:获取包名

adb logcat  |grep START :抓取日志中包含有START字符的log信息,打开(或关闭)要测试的包,在日志中查找相关名称



step6:给指定包打压力

adb shell monkey -p com.dhms2  1000

二、monkey高级参数应用

1.--throttle  为事件设置间隔时间

adb shell monkey -p com.dhms2  --throttle 1000   100

以上命令代表,发生100个事件,每个事件间隔1000毫秒(1s)

2.seed参数 指定随机生成数的seed值(每一个seed值产生一个随机的操作序列,seed值相同,操作序列相同)

adb shell monkey -p com.dhms2 -s

seed值 可以自行设置 ,需要重新复现时,再复制这个seed值即可,在日志中能看到一组随机操作序列的seed值

要达到相同操作结果,需要把程序恢复到与之前相同的开始状态

3.触摸事件百分比

adb shell monkey -p com.dhms2 --pct-touch 

0:--pct-touch  触摸

1:--pct-motion 动作事件

2.--pct-pinchzoom  缩放

3.--pct-trackball 轨迹球

4.--pct-rotation 屏幕旋转

5.--pct-nav   基本导航事件百分比、输入设备的上下左右

6:--pct-magiornav 主要导航事件、中间键、返回键、菜单按键

7.--pct-syskeys 系统导航事件、主要手机硬件上 home、back、拨号键、音量键

8.--pct-appwitch  启动activity事件,一个系统中有多个activity事件,设置这个百分比轮流切换启动各个

9.--pct-flip  键盘翻转

10.--pct-anyevent  其他

4.忽略崩溃和异常

adb shell monkey --ignore-crashes   

忽略后,会重新调用程序开始运行

5.忽略超时事件(ANR)

adb shell monkey --ignore-timeouts

三、crash结果析取

四、ANR结果析取

监控日志过程中,出现直接看log

手动操作过程可在手机中看到log信息

adb shell 进入手机

cd  /data/anr/  

ls   有个trace.txt文件

more trace.txt 查看该文件内容

你可能感兴趣的:(monkey2-实践)