monkey实战篇

1、关于monkey网上太多的资料了,在此我就不赘余,这里主要介绍monkey命令拆解学习维度以及离线测试这2块指导实用的Get 起来~~

首先,这是一款android sdk附带的一个工具,一般用来做稳定性测试,monkey犹如猴子一样在手机上各种点击上下左右滑动拖拽等操作,有必要说下不止是点击应用还包括机器的返回按钮、home键等都会有可能被操作到,使用前先安装安卓sdk哦~

命令比较简单,可切成四小块进行学习,分别是常用选项 、 事件选项 、 约束选项 、 调试选项

2、举个栗子:对要***游APP进行伪事件流操作10次,其中忽略各种异常中断,每个时间之间间隔1s,把日志打印到E盘,生成monkey.txt存起来。

adb shell monkey -v -v -v -p com.yaochufa.app  --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --ignore-native-crashes --throttle 1000 10 > E:\monkey.txt

1)常用选项

如 -v -v -v :打印日志(level 0,1,2级日志: 一个v表示一级日志,以上表示2级日志,即最详细的日志)

2)事件选项-s:指定产生随机事件种子值,相同的种子值产生相同的事件序列。如: -s 200

如:

--throttle  1000:每个事件结束后的间隔时间——降低系统的压力(如不指定,系统会尽快的发送事件序列)。这里1000单位毫秒,即1秒

--pct-touch:指定触摸事件的百分比,如:--pct-touch 5% , 相关的option可自行查找哈~

3)约束选项

如 -p com.yaochufa.app : 指定有效的package(如不指定,则对系统中所有package有效),一个-p 对应一个有效package ,以上表示针对【要**游】APP包执行操作

4)调试选项

如--ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --ignore-native-crashes:表示忽略几种中断,继续执行命令到所设定的数目

timeouts:ANR(application no respoding)

security-exceptions:许可错误

monitor-native-crashes:监视应用程序发生奔溃的本地代码

是不是超级简单呀~

3、等等,当你想要测试很多机器时,莫非要一台电脑连接n条线n个机器开着命令窗口然后等呀等等执行完毕,再拿结果,貌似有点坑啊~好吧,这里介绍下离线测试,简单而言就是将要跑的脚本push到机器里去执行并到日志写到手机文件夹里。哈哈,酱紫就断开手机与电脑的连线,到时候等着收货就好啦~

1)制作unix格式test.sh monkey脚本如下:

#!/bin/sh

echo "run com.yaochufa.app"

monkey -v -v -v -p com.yaochufa.app  --ignore-crashes --ignore-timeouts --ignore-security-exceptions --monitor-native-crashes --ignore-native-crashes --throttle 1000 10 > /sdcard/monkey.txt

2)

进入电脑cmd--adb devices检查设备

adb push C:/Users/Administrator/Desktop/test.sh /sdcard/  推到手机目录下(C:/Users/Administrator/Desktop/test.sh这是我电脑test.sh的全目录)

adb shell 进入shell命令

shell sh/sdcard/test.sh &     后台运行test.sh(千万不要去掉&,这是离线、后台运行的意思)

3)脚本跑起来了,并且手机sdcard下生成了monkey.txt文件~ ok可以拔线了,拔完看到它自己依旧在乱点中那就对了...

4、最后,很重要一点是在日志中查出报错,定位问题

详细参考文档见:http://www.docin.com/p-981949415.html?qq-pf-to=pcqq.c2c

你可能感兴趣的:(monkey实战篇)