Android_monkey【介绍_使用】

monkey

一,首先你要先搭建环境
1.先下载jdk具体安装流程请参考:添加链接描述
2.再下载sdk具体安装流程请参考:添加链接描述

二,打开手机的开发者调试工具,用usb数据线链接你的手机;

三,monkey前的准备命令

1.windows+r 输入cmd进入dos命令行;

2.输入adb devices 

3.再输入 adb shell pm list packages   
查看你的手机所有的安装包;输入 adb shell pm list packages -3 查看	手机上所有的第三方安装包,尽量让测试机少安装第三方软件,这样可以尽快的找到想要的安装包名称;

四,首先用一个最简单的mokey去试着找哪个是你想要的安装包名称:

1./ / -p参数:表示指定测试的程序(空格后面跟安装包名字,拿刚才的第三方安装包一个个试)

  / /-v参数:表示查看monkey执行过程的信息(日志级别)(-v 越多越详细,最多三个)
  
  / /数字100:表示测试事件数为100指定一个包adb shell monkey  -p  com.tencent.news  -v -v -v  100   (此时指定软件会被打开并开始乱点乱按)
  
 指定多个包 adb shell monkey -p com.tencent.news -p com.pdfreader -p com.widgets  -v 1000
 
 不指定包  adb shell monkey -v 1000 vent percentages(事件百分比):

0:触摸事件百分比,参数--pct-touch
1:滑动事件百分比,参数--pct-motion
2:缩放事件百分比,参数--pct-pinchzoom
3:轨迹球事件百分比,参数--pct-trackball
4:屏幕旋转事件百分比,参数--pct-rotation
5:暂时不知道这个是什么
6:基本导航事件百分比,参数--pct-nav
7:主要导航事件百分比,参数--pct-majornav
8:系统事件百分比,参数--pct-syskeys
9:Activity启动事件百分比,参数--pct-appswitch
10:键盘翻转事件百分比,参数--pct-flip
11:其他事件百分比,参数--pct-anyevent

2.尽管monkey产生是伪随机事件流,但是我们希望我们的操作有一定的规律性,即按键、触屏等各类事件操作有所偏重。
eg:
(1).对文本框操作,需要更多的按键操作。
(2).玩游戏,需要更多的点击和滑动操作。

3.–throttle

设定两个事件之间一个固定延迟,可以减缓monkey的执行速度。如果不指定,monkey将不会被延迟,事件将尽可能快地生成和发送消息。单位:毫秒

eg:
adb shell monkey --throttle 3000 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。

4.–pct-touch

(空格后加数字)设定触屏事件生成的百分比。触屏事件是一个有手指按下,抬起事件的手势。

eg:
adb shell monkey --throttle 3000 --pct-touch 50 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。其中设定触屏的事件占比为50%。

5.–pct-motion

设定滑动事件生成的百分比。滑动事件是一个先在某一个位置手指按下,滑动一段距离后再抬起手指的手势。

eg:
adb shell monkey --throttle 3000 --pct-motion 50 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。其中设定滑动的事件占比为50%。

6.–pct-trackball

设定轨迹球事件生成的百分比。轨迹球事件是包含一系列随机移动和单击事件的事件

eg:
adb shell monkey --throttle 3000 --pct-trackball 50 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。其中设定轨迹球的事件占比为50%。

7.–pct-nav

设定基本导航事件生成的百分比。基本导航事件是模拟方向性在设备上输入向上、向下、向左、向右的事件。

eg:
adb shell monkey --throttle 3000 --pct-nav 40 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。其中设定基本导航事件的占比为40%。

8.–pct-majornav

设定主要导航事件生成的百分比。主要导航事件通常会导致UI产生回馈信息,如单击Back键、Home键、Menu键等、

eg:
adb shell monkey --throttle 3000 --pct-majornav 40 -p com.tencent.news 100

向APP包【APP应用】发送1000次随机事件,每次事件间隔为3秒。其中设定主要导航事件的占比为40%。

9.–hprof

指定了该参数,Monkey会在发送事件序列的前、后,生成性能分析报告。通常会在data/misc目录下生成一个5MB左右大小的文件

10.–ignore-crashes

通常情况下,monkey会在测试应用程序崩溃或者发生异常后停止运行,若指定了该参数,则monkey将会在产生异常后,继续向系统发送事件,直到指定事件全部运行完毕。

11.–ignore-timeouts

通常情况下,当应用程序发生任何超时错误(application  not  responding)时,monkey将停止运行。若指定了该参数,则monkey将会在产生错误信息后,继续向系统发送事件,直到指定事件全部运行完毕

12.–ignore-security-exceptions

 通常情况下,指定应用程序发生许可错误时(如证书许可,网络许可等),monkey将停止运行。若指定了该参数,即使应用程序发生许可错误,monkey会继续向系统发送事件,直到指定事件全部运行完毕。

eg:adb shell monkey --throttle 3000 --pct-trackball 50 -p com.tencent.news --ignore-security-exceptions 100

上一篇:monkey自动化脚本


下一篇:adb之monkey(七)