windows系统 Monkey 测试Android安卓机:
大概操作流程(测试app为aladdin):
-
安装aladdin App应用
-
手机进入开发者模式,并且打开打开USB调试功能
(不能厂商可能操作不一样,具体需要百度查询) -
安装JDK环境 + jdk环境变量配置
(打开dos窗口,输入命令javac,没有出现“该命令无法识别”即可) -
安装Android SDK环境 + sdk环境变量配置(adb命令是在sdk下)
(打开dos窗口,输入命令adb,没有出现“该命令无法识别”即可) -
打开dos窗口,输入 adb devices,出现如下,代表有设备接入成功
C:\Users\LEIWENWEI>adb devices
daemon not running; starting now at tcp:5037
daemon started successfully
List of devices attached
91c385ca device -
打开dos窗口,输入 adb shell pm list packages | findstr aladdin , 查询app所属包名。
出现如下结果 package:com.aladdin.dangdang -
打开dos窗口,输入 adb shell monkey -p com.aladdin.dangdang -v 2000 > d:\monkey.txt
(-p后边是包名, -v后边是次数, > 后是测试结果文件路径) -
测试结果文件分析
(可以参考如下连接https://www.cnblogs.com/zhangwei-qianqian/p/10893069.html)
其他参考命令:
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
2.尽管monkey产生是伪随机事件流,但是我们希望我们的操作有一定的规律性,即按键、触屏等各类事件操作有所偏重。
eg:(1).对文本框操作,需要更多的按键操作。
(2).玩游戏,需要更多的点击和滑动操作。
3.–throttle 设定两个事件之间一个固定延迟,可以减缓monkey的执行速度。如果不指定,monkey将不会被延迟,事件将尽可能快地生成和发送消息。单位:毫秒
eg:adb shell monkey --throttle 3000 -p com.tencent.news 100
向腾讯新闻发送1000次随机事件,每次事件间隔为3秒。
4.–pct-touch (空格后加数字)设定触屏事件生成的百分比。触屏事件是一个有手指按下,抬起事件的手势。
eg: adb shell monkey --throttle 3000 --pct-touch 50 -p com.tencent.news 100
向腾讯新闻发送1000次随机事件,每次事件间隔为3秒。其中设定触屏的事件占比为50%。
5.–pct-motion 设定滑动事件生成的百分比。滑动事件是一个先在某一个位置手指按下,滑动一段距离后再抬起手指的手势。
eg: adb shell monkey --throttle 3000 --pct-motion 50 -p com.tencent.news 100
向腾讯新闻发送1000次随机事件,每次事件间隔为3秒。其中设定滑动的事件占比为50%。
6.–pct-trackball 设定轨迹球事件生成的百分比。轨迹球事件是包含一系列随机移动和单击事件的事件
eg:adb shell monkey --throttle 3000 --pct-trackball 50 -p com.tencent.news 100
向腾讯新闻发送1000次随机事件,每次事件间隔为3秒。其中设定轨迹球的事件占比为50%。
7.–pct-nav 设定基本导航事件生成的百分比。基本导航事件是模拟方向性在设备上输入向上、向下、向左、向右的事件。
eg:adb shell monkey --throttle 3000 --pct-nav 40 -p com.tencent.news 100
向腾讯新闻发送1000次随机事件,每次事件间隔为3秒。其中设定基本导航事件的占比为40%。
8.–pct-majornav 设定主要导航事件生成的百分比。主要导航事件通常会导致UI产生回馈信息,如单击Back键、Home键、Menu键等、
eg: adb shell monkey --throttle 3000 --pct-majornav 40 -p com.tencent.news 100
向腾讯新闻发送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
本文介绍了如何在Windows系统下进行Android Monkey测试,包括安装必要环境、配置设备、执行Monkey命令及分析测试结果。详细阐述了Monkey测试中涉及的各种参数,如事件数量、事件间隔、事件类型比例等,并提供了针对特定应用的测试示例,帮助理解Monkey测试在提升应用稳定性上的作用。

1451

被折叠的 条评论
为什么被折叠?



