前言
在移动自动化测试中,通常是需要adb命令和monkey命令的联合使用来进行测试,adb命令何其多,monkey命令也不少,组合起来让人头疼,本文讲列出一些常用的命令,帮助大家更好地进行移动自动化测试
Monkey 简介
Monkey 在英文里的含义是“猴子”,在测试行业对应有一个术语叫“猴子测试”,那么什么是“猴子测试”
- Android自带命令行工具,运行在模拟器或实际设备中
- 向被测应用发送伪随机事件流(如按键、触屏、手势等)
- 通过 monkey用随机重复的方式来对应用程序进行一些稳定性、健壮性方面的测试
Monkey 原理
- 利用 socket 通讯(Android 客户端和服务器以 TCP/UDP 方式)
- 使用的事件流数据流是随机的,不能自定义 monkey
- 是用 Java 语言写成,名为 Monkey.jar
- 通过名为 monkey 的 shell 脚本启动执行,shell脚本的存放路径为:/system/bin/monkey
Monkey 命令
adb shell monkey [+ 命令参数] [指令数]
最简单的示例:
adb shell monkey 100 # 发送 100 个随机指令
上面的 monkey 命令发送了 100 个随机指令,因为并没有指定具体的应用包名。会在整个系统内随机执行。
注意: 指令数,也就是发送的随机数的数值一定要放在所有参数的最后。
Monkey 参数
- -p 用于约束限制,用此参数指定一个或多个包。指定包后,所有的随机指令都会针对该应用进行操作。(如何查找包名,请查看文章最后
示例:
adb shell monkey -p com.huomaotv.mobile 100
# 对“火猫 TV”发送 100 个随机指令
接下来的 100 条指令都会在 火猫TV 应用内进行。不过注意,100 条指令会在极快的时间完成。
- -v 用于指定反馈信息级别(信息级别就是日志的详细程度),总共分 3 个级别,以 -v 参数在命令中的个数 决定级别, -v 参数个数越多日志就越详细。
Level 1: 缺省值,仅提供启动提示、测试完成、最终结果及 Crash 日志等少量信息
adb shell monkey -p com.huomaotv.<