一:前提:电脑已经安装AndroidSDK

1.设安装包: xxx.apk ,包名为:com.xxx_xxx

2.把安装包放在:C:\monkey (monkey为新建的文件夹)

3.cmd进入命令行,手机和电脑连接。手机打开开发者模式,允许调试

4.输入:adb devices ,出现下图的提示,表示连接成功,就可以进行下一步操作。


二:输入命令:cd C:\monkey 这样就进入了放置安装包的目录下,就可以安装安装包了

1.安装包:adb install xxx.apk

2.查看包名:aapt dump badging C:\monkey\xxx.apk

3. 直接运行10次 :adb shell monkey -v -p com.xxx_xxx(包名) 10

4.重复以上操作: adb shell monkey -s (seed) -v 如:adb shell monkey -s 1535655135292 -v 10

5.生成txt日志:adb shell monkey -v -p com.xxx_xxx(包名) 10 >./monkey_log.txt

三:指定时间参数设置

在Monkey中,虽然输入的事件是随机产生的,但是可以指定输入事件类型的百分比,让其控制在我们需要的范围内。

在Monkey中,可以设定的事件类型有:

--pct-touch :指定触摸事件的百分比。--pct-motion :指定滑动事件的百分比--pct-trackball :指定轨迹球事件的百分比--pct-nav :指定导航事件中,up、down、left、right等事件的百分比--pct-majornav :指定导航事件中,back、menu等事件的百分比--pct-syskeys :指定系统按键的百分比,包括HOME、Back、音量等。--pct-appswitch :指定Activity之间切换的比例。--pct-anyevent :指定任意事件的百分比

默认情况下,如果不设置,会是-pct-anyevent为百分之百,也就是纯随机事件。如果通过其他的参数配置了之后,如果相加的百分比不为百分百,余下的百分比部分也会生成随机事件。

四: 根据上面的参数配了一个可用的实例脚本

.忽略崩溃,忽略等待,输出日志:adb shell monkey -p com.zld.zld_face_rec_app --throttle 100 --pct-touch 70 --pct-motion 5 --pct-nav 0 --pct-trackball 0 --pct-majornav 5 --ignore-crashes --ignore-timeouts --pct-appswitch 10 --pct-syskeys 5 -v-v-v 100 >./monkey_log.txt

五:monkey进程在运行的时候怎结束进程

1.查看monkey进程:ps | grep monkey

2.杀死进程:kill pid 进程ID

六:monkey日志分析

一般测试结果分析-搜索关键字:1.程序无响应,ANR问题:在日志中搜索“ANR”2.崩溃问题:在日志中搜索“CRASH”

3.其他问题:在日志中搜索”Exception”

4.详细分析monkey日志

Switch--查看log中的Switch,主要是查看Monkey执行的是那一个Activity,两个swtich之间如果出现了崩溃或其他异常,可以在该Activity中查找问题的所在。

Sleeping--Sleeping for 500 milliseconds这是执行Monkey测试时,throttle设定的间隔时间,每出现一次,就代表一个事件。

七:重现问题

monkey测试出现错误后,一般的查错步骤为以下几步:1.找到是monkey里面的哪个地方出错2.查看Monkey里面出错前的一些事件动作,并手动执行该动作3.若以上步骤还不能找出,可以使用之前执行的monkey命令再执行一遍,注意seed值要一样

今天学习了monkey的用法。以上是总结的monkey测试基本用法 没事记录一下自己学了什么!

加油图