1. -p后面接着的对应的包名,如果是整机测试,就不需要-p package_name
2. -s后面是对应的种子数,好像就是操作步骤,根据她们测试的经验,一般种子数在23,同步她们测试的结果,一般种子的个数固定为23,和她们选择的操作步骤就是同步的。
3.--ignore-crashes --ignore-timeouts 这里是在monkey测试的过程中遇到carash或者timeout的情况时忽略掉,一般不设置时,出现carash或者timeout时,Monkey测试会终止。这里是防止Monkey测试终止。
4. -v 指的是Monkey测试时打印log级别。
5. 100000这里是指点击的次数,根据她们测试的经验,对于单个应用程序这个次数设置在100000次就可以了;如果是整机,一般设置在500000次。
/data/local/tmp/log.txt测试的log记录在手机上/data/local/tmp/下面的log.txt里面,这个名字可以自己写。
6.2>&1 固定的写法,这个也很重要,代表的意思是中间忽略的东东的日志一并输入到指定的文件中。
7. 最后单独的一个"&"是一旦Monkey测试开始了,之后可以拔掉数据线,不会影响Monkey测试。
8. 测试所有模块monkey -s 23 --ignore-crashes --ignore-timeouts -v-v -v 100000>/data/local/tmp/log.txt 2>&1 &
adb shell monkey 100 执行monkey 测试100次 针对rom测试或者
adb shell monkey -p com.example.login 100??????用此参数指定一个或多个包
Level 0? :? adb shell monkey -p com.example.login -v 100? // 缺省值,仅提供启动提示、测试完成和最终结果等少量信息 ??
Level 1? :? adb shell monkey -p?com.example.login -v? -v 100????????? // 提供较为详细的日志,包括每个发送到Activity的事件信息
Level 2? :? adb shell monkey -p?com.example.login -v? -v? -v 100 ??? // 最详细的日志,包括了测试中选中/未选中的Activity信息
adb shell monkey 100 >c:/log/b.txt 将log信息写到文档中
随机数种子
monkey测试1:adb shell monkey -p?com.shjt.map –s 10 100
monkey测试2:adb shell monkey -p?com.shjt.map –s 10 100
adb shell monkey -p?com.example.login --throttle 300 100?
表示执行100个伪随机用户事件流,事件间隔为300毫秒。
--pct-touch <percent>
adb shell monkey -pct-touch 67 -v 10 调整触摸事件的百分比。
--pct-motion <percent>
adb shell monkey -pct-motion 67 -v 10 调整motion事件百分比
--ignore-crashes
作用:通常,应用发生崩溃或异常时Monkey会停止运行
--ignore-timeouts(ANR)
作用:通常,应用程序发生任何超时错误(
adb shell monkey -p com.example.login
--ignore-crashes --ignore-timeouts --throttle 100
--pct-touch 50 --pct-motion 50 -v -v 1000 >c:\login\c.txt
一、简介Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。Monkey包括许多选项,它们大致分为四大类:
基本配置选项,如设置尝试的事件数量
运行约束选项,如设置只对单独的一个包进行测试
事件类型和频率
调试选项
在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理(自动停止):
如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。
如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件
二、测试准备
Monkey test前必须先进入android设备的adb shell(Android SDK环境配置不在此描述,网上有很多)步骤如下:
1. 开始—>运行—>cmd
2. usb连接手机,输入 adb shell 命令,待出现 即可输入以下内容
3. 进入手机后,输入相应的monkey命令即可测试
三、基本命令格式
adb shell monkey –p 程序包 –v 测试次数
比如“adb shell monkey –p com.htc.Weather –v 20000”意思是对com.htc.Weather 这个程序包单独进行一次20000次的monkey测试
其中程序包名称可以在串口终端这句命令获得:ls data/data 显示所有程序包
四、测试Log获取
用Monkey test测试,为了方便分析问题,可以在命令monkey命令后面加上 “|logcat -v time”,这样就能边测试边打印Log(记得用终端保存Log文本)例如:
adb shell monkey –p com.htc.Weather –v 20000|logcat -v time
但是这个组合在monkey测试完成后,logcat仍然在执行,测试时需要注意。
如果测试monkey碰到crash或者anr(程序强制性退出或不响应)现象时,在抓取log的同时需要提供traces.txt,步骤如下:
1. 测试版本需要具备root权限
2. 进入data/anr目录下面
3. 将traces.txt文件拷贝到TF卡中,然后拷贝出来发给软件分析即可
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)