Monkey测试工具

本文你将获得的东西:
1,了解Monkey是什么?
2,如何用Monkey测试App的性能?

一,Monkey介绍

Monkey是一款Google提供的一个用于稳定性与压力测试的命令行工具。拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。

二,Monkey用法

1,启动

/*PC启动
 * [option] 测试条件(下面会做详细说明)
 * <count> 测试次数
 */
adb shell monkey [option] <count>

2,保存运行日志

Monkey允许用户可以把运行日志打印到本地或者手机上。

//保存在手机上
adb shell monkey [option] <count> > /mnt/sdcard/monkey.txt

//保存在电脑上
adb shell monkey [option] <count> > D:\monkey.txt

/*还可以根据类别来保存(其中保存的位置也可已换成手机上的位置)
 * 1>打印正确的信息
 * 2>打印错误的信息
 */
adb shell monkey [option] <count> 1> D:\monkeyRight.txt 2> D:\monkeyErr.txt

3,添加测试约束条件

//-v 打印日志的详细程度,-v参数越多打印信息越详细
adb shell monkey -v -v 100

//-p 指定测试某个包
adb shell monkey -p com.android.email 100

//-c 指定测试某个意图,在Manifest中Category参数
adb shell monkey -c com.android.examlple.MONKEY

//-s 随机种子数,需要复现某个测试效果。
adb shell monkey -s 1234 100

//--throttle 每次操作后延迟300毫秒
adb shell monkey --throttle 300 100

//--randomize-throttle 随机延迟,必须与--throttle一起用
adb shell monkey --throttle 300 --randomize-throttle 50 100

4,调试参数

//--dbg-no-events 仅测试打开应用
adb shell monkey --dbg-no-events 100

//--ignore-crashes 忽略crash异常
adb shell monkey --ignore-crashes 100

//--ignore-timeouts 忽略ANR异常
adb shell monkey --ignore-timeouts 100

//--ignore-security-exception 忽略权限许可异常
adb shell monkey --ignore-security-exception 100

//--ignore-native-crashes 忽略本地底层错误
adb shell monkey --ignore-native-crashes 100

//--monitor-native-crashes 忽略Android底层错误
adb shell monkey --monitor-native-crashes 100

5,黑白名单的添加

//--pkg-blacklist-file PACKAGE_BLACKLIST_FILE 该文件下的包不测试
adb shell monkey --pkg-blacklist-file D:\black.txt

//--pkg-whitelist-file PACKAGE_WHITELIST_FILE 仅测试该文件中的包
adb shell monkey --pkg-whitelist-file D:\white.txt

下面命令是查询应用的包名,并保存到本地

//查看手机端的包名
adb shell pm list packages

//把列表保存到D盘的pkg.txt文件中
adb shell pm list packages > D:\pkg.txt

6,Monkey测试策略介绍

//case 1:整机测试,而不测试拨号盘应用,忽略所有错误,次数100万次。
adb shell monkey --ignore-crashes --ignore--timeouts --pkg-blacklist-file /data/local/tmp/blacklist.txt -v -v 1000000

//case 2:测试计算器30万次,随机种子为100,随机延迟0-1秒,忽略所有错误
adb shell monkey -p com.android.calculator2 -s 100 --throttle 1000 --randomize-throttle --ignore-crashes --ignore-timeouts -v -v 300000

//case 3:测试计算机,触摸时间30%,其他按键50%,错误停止,延迟200
adb shell monkey -p com.android.calculator2 --throttle 200 --pct-touch 30 --pct-anyevent 50 -v -v 100000

//case 4:对计算器进行旋转压力测试,事件延时2秒,10万次
adb shell monkey -p com.android.calculator2 --pct-rotation 100 --throttle 2000 100000

//case 5:仅对整机的应用开启测试,事件延时5秒,10万次
adb shell monkey --pct-appswitch 100 --throttle 5000 10000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值