Android Monkey 测试分析
极力推荐Android 开发大总结文章:欢迎收藏
程序员Android 力荐 ,Android 开发者需要的必备技能
Monkey 在开发中非常常见,本篇主要梳理 monkey
测试相关知识点。主要包括以下内容
- 整机 monkey 测试命令
- app monkey 测试命令
- 判断Monkey 测试方法
- 停止monkey的方法
- Monkey 使用手册
- Monkey Crash Log 分析
- Monkey ANR Log 分析
- Monkey 测试中关机
- Monkey 运行机制
1. 整机 monkey 测试命令
整机 测试 忽略 crash timeout security-exceptions
等导致的monkey测试中断,并将 Log
保存到指定文件中。
adb shell monkey --ignore-crashes --ignore-timeouts --ignore-security-exceptions --throttle 100 -v 999999999 > monkey_log.txt
2. app monkey 测试命令
执行app
测试,如遇到crash
会打印出crash
信息,方便我们解决crash
。
adb shell monkey -p com.qiyi.video(要测试app的包名) 999999
忽略Crash ANR 、安全异常
等测试方法。
adb shell monkey -p com.qiyi.video(要测试app的包名) --ignore-crashes --ignore-timeouts --ignore-security-exceptions --throttle 100 -v 999999999 > monkey_log.txt
3. 判断Monkey 测试方法
/**
* Returns true if Monkey is running.
*/
public static boolean isMonkeyRunning() {
return ActivityManager.isUserAMonkey();
}
4. 停止monkey的方法
- a.通过查看进程,然后
kill
掉monkey
进程
查看手机monkey
进程的命令adb shell ps |findstr monkey
, 通过稍等进程 id(adb shell kill -9 18333(monkey进程ID)
),实现停止monkey
测试。
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
- b. 重启手机
此种方案简单暴力。
5. Monkey 使用手册
monkey
使用参数命令帮助手册命令如下:adb shell monkey -help
-
-v
表示Log
信息登记 -
--throttle
表示毫秒数 -
-s
表示发送随机数种子 -
-p
表示测试Monkey app
包名
6 .Monkey Crash Log 分析
在抓取的adb log
中,使用文本编辑器(建议使用Notepad++,匹配大小写
)打开,
搜索一下关键字 CRASH:
7 .Monkey ANR Log 分析
在抓取的adb log
中,使用文本编辑器(建议使用Notepad++,匹配大小写
)打开,
搜索一下关键字 ANR in 或 者 NOT RESPONDING
如有ANR
还需要将 data/anr
下的trace
文件pull
出来辅助分析 ANR
原因。
导出ANR
文件的命令如下:
adb pull data/anr .
8.Monkey 测试中关机
Monkey
测试过程中关机可以先从以下方法入手。
1.搜索关键字battery_level 查看电池电量。
通过次关键字可以在events_log
中查看关机时候的电池电量信息、电池电压信息、电池温度信息。
9.Monkey 运行机制
因为系统中已经将monkey.jar
打包到 system/framework/
中 ,故monkey
命令可以在手机上直接运行。
执行monkey
命令的脚本存放地址在system/bin
目录下,通过此脚本,既可以开始执行monkey
相关的命令测试。
至此,本篇已结束,如有不对的地方,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!