Android APP压力测试(一)
之Monkey工具介绍
前言
本文主要介绍Monkey工具。Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。此文主要给自己查阅用。
[目录]
1、Monkey简介
2、Monkey参数说明
3、Monkey实例
4、Monkey测试结果分析
1、Monkey简介
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对APP进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。
2、Monkey参数说明
Monkey包括许多选项,大致分为四大类:
参考:https://developer.android.com/intl/zh-cn/tools/help/monkey.html
3、Monkey实例
1)、指定一个包:adb shell monkey -p com.example.findyou 10
2)、指定多个包:adb shell monkey -p com.example.findyou –p com.example.findyou1 -p com.example.findyou2 100
3)、Seed值:Monkey测试1:adb shell monkey -p com.example.findyou –s 10 100
Monkey 测试2:adb shell monkey -p com.example.findyou –s 10 100
指定了相同的Seed值,就可以保证两次测试产生的随机操作序列是完全相同的
4)、日志级别
Level 1 :adb shell monkey -p com.example.findyou –v -v 100
说明 提供较为详细的日志,包括每个发送到Activity的事件信息
Level 2 :adb shell monkey -p com.example.findyou –v -v –v 100
说明 最详细的日志,包括了测试中选中/未选中的Activity信息
4、Monkey测试结果分析
Monkey测试的og分析,我们可以通过几个关键词来判断测试是否通过。
1)Monkey finished
打开LOG,查看log的最下端,是否有类似以下字段:
## Network stats: elapsed time=5123ms (5123ms mobile, 0ms wifi, 0ms not connected)
// Monkey finished
这个字段表明本次的Monkey没有异常,测试通过。
2)CRASH
同样,在得到LOG后,搜索”CRASH”字段,如果搜索到有结果,则表明有进程出现问题,测试不通过。
// CRASH: com.onekchi.downloadmanager (pid 12919)
3)ANR
在Log中搜素该字段,如果有搜索有结果,则表示测试过程中,测试对象出现了无响应的现象,因此测试不通过。--throttle <毫秒>值建议为500
4)无法搜索到上述信息
出现这种情况,一般都是外界原因而非程序本身原因。比如电脑异常测试中断,需要重新测试。