Android应用Monkey压力测试

简介:Monkey是Android自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常;分为四个选项:常用选项,事件选项,约束选项,调试选项.
1,常用选项
-help展示自带的帮助

例如:adb shell monkey -help

-v每一个-v增加反馈信息级别

例如:
日志级别level0
adb shell monkey -p 应用包名 -v 100(执行次数)
日志级别 Level 1
adb shell monkey -p 应用包名 –v -v 100 (执行次数)

2,事件选项

-s 指定生成的seed值,值相同,产生的事件序列也相同

例如:
1,adb shell monkey -p 包名 –s 10 100
2,adb shell monkey -p 包名 –s 10 100
-s相同表示生成的随机数相同,二次测试结果相同

-throttle <毫秒>每个事件结束后间隔事件

例如:
adb shell monkey -p 包名 –throttle 3000 100
解释:测试100次,每次结束后3000毫秒在进行下一次

-pct-{+事件类别} {+事件类别百分比}

用于指定每种类别事件的数目百分比(在Monkey事件序列中,该类事件数目占总事件数目的百分比)

--pct-touch+百分比}

调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)

adb shell monkey -p 包名 --pct-touch 101000
--pct-motion+百分比}

调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)

adb shell monkey -p 包名 --pct-motion 20 1000
--pct-trackball+百分比}

调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)

adb shell monkey -p 包名 --pct-trackball 301000
--pct-nav+百分比}

调整“基本”导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)

adb shell monkey -p 包名 --pct-nav 40 1000
--pct-majornav+百分比}

调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)

adb shell monkey -p 包名 --pct-majornav 501000
--pct-syskeys+百分比}

调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、StartCall、End Call及音量控制键)

adb shell monkey -p 包名 --pct-syskeys 601000
--pct-appswitch+百分比}

调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法

adb shell monkey -p 包名 --pct-appswitch 701000
--pct-anyevent+百分比}

调整其它类型事件的百分比。它包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等

adb shell monkey -p 包名 --pct -anyevent 100 1000
* 指定多个类型事件的百分比:

adb shell monkey -p 包名 --pct-anyevent 50--pct-appswitch 50 1000
注意:各事件类型的百分比总数不能超过100%

3,约束选项
-p:指定有效的package

例如:
adb shell monkey -p 包名 100

-c 启动activity必须至少包含一个指定的category,才能被启动

4、调试选项
–dbg-no-events:初始化启动的activity,但是不产生任何事件。
–hprof:指定该项后在事件序列发送前后会立即生成分析报告 —— 一般建议指定该项。
–ignore-crashes:忽略崩溃
–ignore-timeouts:忽略超时
–ignore-security-exceptions:忽略安全异常
–kill-process-after-error:发生错误后直接杀掉进程
–monitor-native-crashes:跟踪本地方法的崩溃问题
–wait-dbg:知道连接了调试器才执行monkey测试。
5、一个简单的monkey命令:
adb shell monkey -p 包名 -s 500 -v 10000
但是,工作中为了保证测试数量的完整进行,我们一般不会在发生错误时立刻退出压力测试。monkey 测试命令如下

adb shell monkey -p 包名 -s 500 –ignore-crashes –ignore-timeouts –monitor-native-crashes -v -v 10000 > C:\monkey_log\java_monkey_log.txt(错误日志输出绝对路径)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值