Android Monkey—持续更新

概念

Monkey是Android系统自带的一个命令行工具,可以在Android模拟器或手机设备中运行。通过向Android系统发送伪随机用户事件流(如屏幕的点击、滑动和系统按键操作等),实现对Android App进行稳定性测试。另外,由于Monkey可以做很多次随机事件,所以Mondey有时也做app的压测工具。

通讯

借助ADB与Monkey进行通讯

使用

查看包名

adb shell pm list packages
在这里插入图片描述

高级参数—throttle

使用百度进行1000次随机事件
在这里插入图片描述
命令格式:adb shell monkey -p com.baidu.searchbox 1000

命令解释:参数-p 是package的缩写,后面跟着你要指定测试的app的包名,如果不知道如何或者包名,请看ADB那篇文章。上面参数1000,表示要做多少个随机事件的次数。上面红圈的地方,表示事件注入了1000,看到这个表示,测试完成,如果出现小于1000这个数字,说明有些事件没有执行成功。从上面截图来看,虽然执行了1000个随机事件,一共耗时1.5595秒。
1000个事件只花了1秒多,我们肉眼看到的肯定没有1000个事件,主要是因为点击、滑屏、输入等容易被我们察觉,但是其他事件我们不容易察觉,我们可以让执行速度慢一点,看的更清楚一点。
可以使用throttle参数来实现,,throttle主要控制执行的速度。
在这里插入图片描述
1000单位是ms,代表执行一个事件所花的时间;10代表事件个数

高级参数—seed

monkey都是通过seed的值来产生随机事件,如果要进行相同的操作,加上seed就可,可以用来复现bug
在这里插入图片描述
参数-s代表seed,100表示seed的值,seed会根据这个值去生成随机事件序列,后面的50代表随机事件次数。

测试步骤:

1.手机端打开手机百度app

2.执行上面命令一次,发现我们打开的是北京市的天气预报网页

3.退出天气预报页面,后台杀掉手机百度这个进程

4.手机再次打开手机百度,电脑上cmd再次输入上面截图的命令

5.发现打开的还是北京天气的页面

高级参数—触摸事件

monkey是随机发送事件的,但是有时候我们需要只做一件事情,例如我们只需要做点击事件,在app中点击一般称为触摸,也就是touch。
1.只做100%的touch事件,下面的100表示百分比,10表示随机事件次数
在这里插入图片描述
2.通过添加-v参数,可以看到详细的信息

其他事件

前面一篇我们介绍了Monkey中的touch事件,也就是我们经常说的点击或者触屏事件。什么叫点击呢?相当于键盘,松开,这就完成了一次点击事件。在Monkey中,除了点击事件,还定义了其他10种事件。

1.事件种类

在这里插入图片描述
–pct-touch 后跟80,代表80%的概率,根据下方的详细信息,可以看出0代表点击事件

2.motion事件

什么事motion事件,就是不同手势的动作事件

在这里插入图片描述
所以,数字1表示手势事件

3.pinchzoom事件

这个事件称为二指缩放事件,就是用两个手指在屏幕上画一下
在这里插入图片描述

4.trackball事件

中文名称为轨迹球事件,效果有点像下拉刷新新闻列表。
在这里插入图片描述
这里后面的20 20 100不太懂,暂时放过

5.屏幕旋转事件rotation

屏幕旋转,主要有横屏和竖屏
在这里插入图片描述

6.permission事件

在这里插入图片描述

7.基本导航事件

设备的上下左右四个方向的导航操作。
在这里插入图片描述

8.主导航事件

设置主要导航事件,例如app的中间键,返回键,菜单按键,应该很多app底部都有三到四个按钮,例如首页,发现,我的这样的底部菜单。
在这里插入图片描述

9.系统导航事件

系统导航事件,主要是硬件设备的Home键,返回键和拨号键和音量键。数字8的类型表示系统导航事件
在这里插入图片描述

10.切换Activity事件

我们知道app里有多个Activity,我们切换到不同Activity事件,可以设置这样事件的百分比。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值