monkey命令_APP测试之Monkey压力测试(二)

——————·今天距2020年85天·——————

这是ITester软件测试小栈第51次推文

ddd86fcc9be7c71d14c73703cac21bdb.gif

大家好,我是coco小锦鲤 欢乐的假期即将走远 学习的号角继续吹响 延续昨天Monkey(一) 今天进军Monkey(二)

学到就是一件很happy的事

a020f008efff97ca66ff92589ec45480.gif

通过APP测试之Monkey测试(一),我们了解了Monkey是什么,Monkey是如何实现对APP进行压力测试,也熟悉了Monkey基本的命令,今天将在之前的基础上进行补充和拓展,一起深入接触并掌握Monkey,这之后,我们还将总结APP测试常见问题,不要错过哦!

Monkey命令组合及规范

728ca939158bcb951b7c0fa2762a980c.gif

Monkey参数的约束限制规范:

1.一个 -p 选项只能用于一个包,指定多个包,需要使用多个 -p 选项;

2.-s 伪随机数生成器的seed值,如果用相同的seed值再次运行monkey,它将生成相同的事件序列,对9个事件分配相同的百分比;

3.-c 用此参数指定一个或多个类别,同样,需要指定多个类别就需要多个-c参数;常见的类别有Intent.category.LAUNCHER、Intent.category.MONKEY;

4.-v 命令行的每一个-v将增加反馈信息的级别:

Level 0为一个-v的命令,除了启动的提示、测试完成和最终结果之外,提供较少的信息 ;Level 1为两个-v的命令,提供较为详细的测试信息,如逐个发送到Activity的事件 ;Level 2为三个-v的命令,提供更加详细的测试信息,如测试中被选中或未被选中的Activity;

常见命令组合:

1.monkey -p com.package -v 500 :简单的输出测试的信息;

2.monkey -p com.package -v -v -v 500  :以深度为三级输出测试信息;

3.monkey -p com.package --port 端口号 -v :为测试分配一个专用的端口号,不过这个命令只能输出跳转的信息及有错误时输出信息;

4.monkey -p com.package -s 数字 -v 500 :为随机数的事件序列定一个值,若出现问题下次可以重复同样的系列进行排错;

5.monkey -p com.package -v --throttle 3000 500 

:为每一次执行一次有效的事件后休眠3000毫秒;

e3e0f1e8d48d1e8c2fd3991a25aaf41b.png

Monkey测试参数建议

728ca939158bcb951b7c0fa2762a980c.gif 间隔时间: 500毫秒;

种子数:随机;

遇到错误:不停止;

执行时长:每机型不小于12小时或点击次数:100万次;

机型覆盖建议:覆盖高中低端机型

不同芯片平台(高通、海思、MTK等)

不同分辨率(480*800以上主流分辨率)

不同安卓版本(安卓4.0以上主流安卓版本);

e3e0f1e8d48d1e8c2fd3991a25aaf41b.png

Monkey参考命令

728ca939158bcb951b7c0fa2762a980c.gif adb shell monkey -p com.tencent.XXX(替换包名) --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 1000000>d:\monkeyScreenLog.log e3e0f1e8d48d1e8c2fd3991a25aaf41b.png

测试可以发现的问题

728ca939158bcb951b7c0fa2762a980c.gif Android平台应用程序可能产生以下四种Crash:

App层(JAVA应用程序):

1、Force Close Crash

2、ANR Crash 

Native层(本地框架):

3、Tombstone Crash(Native Crash)

Kernel层(LINUX内核空间):

4、Kernel Panic

e3e0f1e8d48d1e8c2fd3991a25aaf41b.png

Monkey工具九个事件

//Monkey工具随机事件类型(seed值)

[--pct-touch PERCENT]  -0. 触摸事件(down-up事件);

[--pct-motion PERCENT] -1.动作事件(down-up事件和伪随机事件组成);

[--pct-trackball PERCENT] -2.轨迹事件(随机移动、有时伴随点击);

[--pct-nav PERCENT] -3.基本导航事件(导航事件来自方向输入设备的up、down、left、right组成);

[--pct-majornav PERCENT] -4.主要导航事件(引发图形界面动作,如回退、菜单按键);

[--pct-syskeys PERCENT] -5.系统按键事件(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键);

[--pct-appswitch PERCENT] -6.调整启动Acticity百分比(在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法,从一个Activity跳转到另一个Activity);

[--pct-flip PERCENT]    -7.调整键盘翻转事件的百分比

[--pct-anyevent PERCENT]-8.其它类型事件(它包罗了所有其它类型的事件,如:按键、不常用的设备按钮等)

记录monkey log的值

adb shell monkey -p com.xxx.xxx 1000 > C:\monkey.txt

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值