Monkey 稳定性测试知多少

和您一起终身学习,这里是程序员Android

Monkey 在开发中非常常见,本篇主要梳理monkey 测试相关知识点。主要包括以下内容

一、Android 整机 monkey 测试方法
二、App monkey 测试方法
三、判断Monkey 测试方法
四、停止monkey测试的方法
五、Monkey 命令使用手册
六、Monkey Crash Log 分析
七、Monkey ANR Log 分析
八、Monkey 测试中关机log 分析
九、Monkey 运行机制

一、Android 整机 monkey 测试方法

Android 整机测试需要忽略 crash timeout security-exceptions等导致的monkey测试中断,并将Log 保存到指定文件中。
比如我要模拟99999 次点击事件,并将测试log保存到monkey_log.txt中,可以使用以下方法:

adb shell monkey --ignore-crashes --ignore-timeouts --ignore-security-exceptions --throttle 100 -v 99999 > monkey_log.txt

二、App monkey 测试方法

执行app测试,如遇到crash会打印出crash信息,方便我们解决crash
adb shell monkey -p com.qiyi.video(要测试app的包名) 999999

忽略Crash ANR 、安全异常等测试方法。
比如我要模拟99999 次爱奇艺app的点击事件,并将测试log保存到aiqiyi_log.txt中,可以使用以下方法:

adb shell monkey -p  com.qiyi.video(要测试app的包名) --ignore-crashes --ignore-timeouts --ignore-security-exceptions --throttle 100 -v 99999 > aiqiyi_log.txt

三、判断Monkey 测试方法

判断 Monkey 测试是否正在运行,我们可以使用以下方法:

   /**
    * Returns true if Monkey is running.
    */
   public static boolean isMonkeyRunning() {
       return ActivityManager.isUserAMonkey();
   }

四、停止monkey测试的方法

1.查看monkey进程,然后kill掉

查看手机monkey进程的命令adb shell ps |findstr monkey, 通过稍等进程 idadb shell kill -9 18333(monkey进程ID)),实现停止monkey测试,适用于debug版本。

C:\Users\Administrator>adb shell ps |findstr monkey
shell     18333 273   1627720 34672 binder_thr 759b3b8884 S com.android.commands.monkey

C:\Users\Administrator>adb shell kill -9 18333
停止monkey 测试的方法

2.重启手机

此种方案简单暴力,原理也是杀掉monkey 进程,适用于user版本。

五、Monkey 命令使用手册

monkey 使用参数命令帮助手册命令如下:adb shell monkey -help

Monkey 参数使用手册

  • -v 表示Log信息登记
  • --throttle 表示毫秒数
  • -s 表示发送随机数种子
  • -p 表示测试Monkey app 包名
monkey 部分参数

六、Monkey Crash Log 分析

在抓取的adb log中,使用文本编辑器(建议使用Notepad++,匹配大小写)打开,
搜索一下关键字 CRASH:

Monkey log 分析举例

七、Monkey ANR Log 分析

在抓取的adb log中,使用文本编辑器(建议使用Notepad++,匹配大小写)打开,
搜索一下关键字 ANR in 或 者 NOT RESPONDING

ANR Log 分析

如有ANR还需要将 data/anr 下的trace 文件pull 出来辅助分析ANR原因。

1.导出ANR 文件的命令如下:

adb pull data/anr .

导出 ANR 文件

八、Monkey 测试中关机Log 分析

Monkey 测试过程中关机可以先从以下方法入手。
1.搜索关键字battery_level 查看电池电量。
通过次关键字可以在events_log 中查看关机时候的电池电量信息、电池电压信息、电池温度信息。

电池相关信息

九、Monkey 运行机制

因为Android 系统中已经将monkey.jar打包到 system/framework/中 ,故monkey命令可以在手机上直接运行。

1.monkey.jar 后台支持

monkey jar 包文件
手机 monkey jar包存放路径

2.手机中monkey bin 文件的支持

执行monkey命令的脚本存放地址在system/bin目录下,通过此脚本,既可以开始执行monkey 相关的命令测试。

monkey 脚本
手机monkey命令脚本存放地址

至此,本篇已结束。转载网络的文章,小编觉得很优秀,欢迎点击阅读原文,支持原创作者,如有侵权,恳请联系小编删除,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

你可能感兴趣的:(Monkey 稳定性测试知多少)