mokey 做 稳定性测试 基本玩法

Monkey是Andriod的一个行命令工具,可以作为Andriod的自动化测试的一种手段。

其实就是模拟一个用户在App上乱按、乱输,与其说是模拟用户,不如说就是模拟个捣乱的猴子,毕竟有时候确实不知道用户会怎样折磨软件hhh
所以Monkey测试是做app软件的稳定性、健壮性测试的有效方法 

Monkey的不足

  • Monkey可以根据一个指定的命令脚本发送按键消息,但不支持判断和读取待测界面的值来执行验证操作。毕竟只是只猴子
  • 测试对象只能是应用程序包,有局限性。不过测试是够用了
  • Monkey测试使用的事件流数据是伪(模拟)随机的,不能自定义。不过可以通过相同的Seed复现,所以是缺点也是优点吧。

因为Monkey测试多是为了满足测app的稳定性、健壮性的,Monkey要在产品稳定、没有严重bug的时候再折磨来软件。不然App一直在改,测了个寂寞


 

Monkey基本玩法

启动Andriod设备→打开cmd命令行界面→连接设备adb devices→adb shell monkey [option]

  • -p:被测试app的包名

  • -v:反馈信息的级别

    • -v:0级  -v-v:一级  -v-v-v:二级  (1级够用0级太详细了....)

  • Monkey事件

    • --pct-touch  触摸事件

      • 其实就是起和落的事件Touch(ACTION_DOWN)和Touch(ACTION_UP)
    • --pct-motion        手势事件

      • 其实就是触摸事件多个移动:ACTION_DOWN、ACTION_MOVE、ACTION_UP
    • --pct-pinchzoom        二指缩放事件

      • 其实就是两个手势事件同时:ACTION_DOWN、ACTION_POINTER_DOWN、ACTION_MOVE、ACTION_UP、ACTION_POINTER_UP
    • --pct-trackball        轨迹事件

      • 已经凉凉的操作交互......Trackball(ACTION_MOVE)
    • --pct-rotation        屏幕旋转事件

      • 隐藏事件,Andriod官方文档没写....rotation
    • --pct-nav        基本导航事件

      • 又一个凉凉的方向键交互...Key(ACTION_DOWN)、Key(ACTION_UP)
    • --pct-majornav        主要导航事件

      • 三大金刚键Key(ACTION_DOWN)、Key(ACTION_UP)
    • --pct-syskeys        系统按键事件

      • Key(ACTION_DOWN)、Key(ACTION_UP)
    • --pct-appswitch        启动Activity事件

      • 启动Activity事件是指在手机上启动一个Activity的操作。在随机的时间间隔中,Monkey将执行一个startActivity()方法,作为最大限度上覆盖被测包中全部Activity的一种方法。该事件是由一个Switch操作组成的。
    • --pct-flip        键盘事件

      • 键盘事件主要是一些与键盘相关的操作。比如点击输入框、键盘弹起、点击输入框以外区域、键盘收回等。主要是键盘的打开和关闭操作。
  • 事件之间的延迟

    • --throttle 300

    • --throttle time --randomize-throttle

  • 各种忽略响应

    • --ignore-timeouts        忽略程序无响应

      • 设置后,Monkey会执行完所有的事件,不会因ANR(Application No Responding)而停止
    • --ignore-crashes        忽略程序崩溃

      • 设置后,Monkey会执行完所有的事件,不会因崩溃(Crash)而停止
    • --ignore-native-crashes        忽略Monkey本身的异常

      • 忽略monkey本身的异常,直到事件执行完毕
    • --ignore-security-exceptions        忽略证书或认证异常

      • 设置后,Monkey会执行完所有的事件,不会因认证或证书异常而停止
  • --monitor-native-crashes        监视系统中本地代码发生的崩溃

  • -s        神奇的种子

    • 如果seed相同,则两次Monkey测试所产生的事件序列也相同的

posted @ 2020-09-29 23:27  HEREISDAVID  阅读(268)  评论(0)    收藏  举报