川石教育
全国咨询热线:136-9172-9932
  1. 首页 > 资讯与干货 > IT资讯

西安软件测试培训学什么?Monkey事件详解

作者:川石学院 日期:2021-08-19 17:29:05 点击数:

  西安软件测试培训学什么?本章节主要讲解“Monkey事件”的详细介绍,我们先从Monkey的简单介绍说起。

  monkey是android自带系统自带的程序,可以生成伪随机用户事件来模拟单击、双击、输入、滑动、拖动、触摸、手势等操作,可以对正在开发中的app程序进行随机压力测试和稳定性测试。

西安软件测试培训学什么?Monkey事件详解(一)(图1)

  Monkey事件类型详解

  Monkey所执行的随机事件流中包含11大事件,分别是触摸事件、手势事件、二指缩放事件、轨迹事件、屏幕旋转事件、基本导航事件、主要导航事件、系统按键事件、启动Activity事件、键盘事件、其他类型事件。每种事件具体解释如下:

  1.触摸事件(touch)

  触摸事件是指在屏幕某处按下并抬起的操作,可通过--pct-touch参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到。 该事件由一组Touch(ACTION_DOWN)和Touch(ACTION_UP)事件组成,在手机上看到实际操作类似于点击。

  2.手势事件(motion)

  手势事件是指在屏幕某处的按下、随机移动、抬起的操作,即直线滑动操作。可通过--pct-motion参数来配置其事件百分比。

  该事件是由一个ACTION_DOWN事件、一系列ACTION_MOVE事件和一个ACTION_UP事件组成的,在手机上看到的实际操作是一个没有拐弯的直线滑动操作。

  3.二指缩放事件(pinchzoom)

  二指缩放事件是指在屏幕上的两处同时按下,并同时移动,最后同时抬起的操作,即智能机上的放大缩小手势操作。可通过--pct-pinchzoom参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到:

  该事件起始是一个ACTION_DOWN事件和一个ACTION_POINTER_DOWN事件,即模拟两个手指同时点下;中间是一系列的ACTION_MOVE事件,即两个手指同时在屏幕上直线滑动;结束是由一个ACTION_POINTER_UP事件和一个ACTION_UP事件组成的,即两个手指同时放开。

  4.轨迹事件(trackball)

  轨迹事件是由一个或多个随机的移动组成的,有时会伴随着点击。很早之前的Android手机带有轨迹球,这个事件就是模拟的轨迹球的操作。现在的手机几乎都没有轨迹球,但轨迹球事件中包含曲线滑动操作,如果被测程序需要曲线滑动时可以选用此参数。可通过--pct-trackball参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到:

  该事件是由一系列的Trackball(ACTION_MOVE)事件组成的,观察手机上的操作,即为一系列的曲线滑动操作。

  5.屏幕旋转事件(rotatio)

  屏幕旋转事件是一个隐藏事件,在Android官方文档中并没有记录这个事件。它其实是模拟的Android手机的横屏和竖屏切换。可通过—pct-rotation参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 该事件由一个rotation事件组成,其中degree表示的是旋转方向,顺时针旋转,0表示旋转90度的方向,1表示旋转180度的方向,2表示旋转270度的方向,3表示旋转360度的方向。在执行过程中,可以看到手机屏幕在横竖屏之间不断地切换。

  6.基本导航事件(nav)

  基本导航事件是指点击方向输入设备的上、下、左、右按键的操作,现在手机上很少有上、下、左、右按键,这种事件一般用得比较少。可通过--pct-nav参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到:

  该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的就是上、下、左、右四个方向按键。

  7.主要导航事件(majornav)

  主要导航事件是指点击“主要导航”按键的操作,这些按键通常会导致UI界面中的动作,如键盘的中间键、回退按键、菜单按键。可通过--pct-majornav参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的按键就是中间键和菜单键。

  8.系统按键事件(syskeys)

  系统按键事件是指点击系统保留使用的按键的操作,如点击Home键、返回键、音量调节键等。可通过--pct-syskeys参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的就是上面说到的几个系统按键。

  9.启动Activity事件(appswitch)

  启动Activity事件是指在手机上启动一个Activity的操作。在随机的时间间隔中,Monkey将执行一个startActivity()方法,作为最大限度上覆盖被测包中全部Activity的一种方法。可通过--pct-appswitch参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 该事件是由一个Switch操作组成的,从手机上看,上面的操作实际是打开了com.android.settings这个应用的一个com.android.settings.Settings的Activity界面。

  10.键盘事件(flip)

  键盘事件主要是一些与键盘相关的操作。比如点击输入框、键盘弹起、点击输入框以外区域、键盘收回等。可通过--pct-flip参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 如日志所示,这里主要是键盘的打开和关闭操作。

  11.其他类型事件(anyevent)

  其他类型事件包括了除前面提到的10种事件外其他所有的事件,如按键、其他不常用的设备上的按钮等。可通过--pct-anyevent参数来配置其事件百分比。从Monkey执行该事件对外输出的日志可以看到: [代码] 该事件是由一个Key(ACTION_DOWN)和一个Key(ACTION_UP)组成的,点击的按键就是其他的一些系统按键,如字母按键、数字按键等。因为现在手机很少带字母按键或数字按键,所以这个事件一般使用得比较少。

       如何指定Monkey事件

  执行monkey时,如果不指定时间类型,系统会随机生成各类事件,事件百分比不一。

  Monkey命令如果要指定事件类型使用--pct-事件名称 事件百分比 的方式。例如:

  adb shell monkey -p cn.mopon.film --pct-touch 20 --pct-pinchzoom 20 --pct-motion 15 --pct-appswitch 30 1000。

  指定多个事件百分比时,各百分比之和不能超过100%。如果指定了事件类型百分比,这些指定事件百分比加起来等于100 ,则只生成指定事件。如果加起来小于100,假设加起来等于80,则没有指定的事件会随机生成,且各未指定事件百分比数加起来等于20.如果指定事件百分比加起来大于100,则执行报错。

  本章节关于“Monkey事件详解”的部分就学习到这里,大家觉得文章有用的话记得每天来这里和小编一起学习涨薪技能哦。


相关文章
  • 亚马逊运营成功转行软件测试,薪资13K表示很满意!2021-08-19 17:29:05
  • 西安川石的兰朋友喊你来当他的学弟学妹啦!2021-08-19 17:29:05
  • 国外的月亮也不一定比国内测试猿的年薪美~2021-08-19 17:29:05
  • 建筑工程专业朱同学成功转行为软件测试人!2021-08-19 17:29:05
  • 财务管理专业转行软件测试月薪甩会计几条街!2021-08-19 17:29:05
  • 只有技术沉淀才能成功上岸,深圳就业薪资13K!2021-08-19 17:29:05
  • 薪资11K!实现自我价值,从掌握一门IT技术开始...2021-08-19 17:29:05
  • 文科生转行软件测试照样拿下高薪15K!2021-08-19 17:29:05
  • 恭喜罗同学喜提19.5K,成功入行软件测试!2021-08-19 17:29:05
  • 毕业1年,迷茫的他最终选择转行软件测试2021-08-19 17:29:05