Appium+python自动化(十七)- 你难道是猴哥失散多年的混血弟弟???(超详解)

匿名 (未验证) 提交于 2019-12-02 22:51:30

简介

常用名:Monkey

原名:Monkey

出身年月:不详

职业:自动化测试工具

常住地址:花果山水帘洞1号

1、Monkey简介

Android的官方自动化测试领域有一只非常著名的“猴子”叫Monkey,这只“猴子”一旦启动,就会让被测的Android应用程序像猴子一样活蹦乱跳,到处乱跑。人们常用这只“猴子”来对被测程序进行压力测试,检查和评估被测程序的稳定性。

Android官方对这只“猴子”的描述是这样的:

  The Monkey is a program that runs on your emulator or device and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events. You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner.

  Monkey是一个程序,运行在您的模拟器或设备上,并生成伪随机的用户事件流,如点击,触摸或手势,以及一些系统级事件。 您可以使用Monkey以随机但可重复的方式对您正在开发的应用程序进行压力测试。

  monkey官方文档:http://www.android-doc.com/tools/help/monkey.html

2、环境搭建

3、什么是Monkey

  通过Monkey程序模拟用户触摸屏幕、滑动Trackball、 按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常

4、Monkey 用来做什么

5、Monkey程序介绍




6、Monkey 架构

  Monkey 运行在设备或模拟器上面,可以脱离PC运行(普遍做法是将monkey作为一个像待测应用发送 随机按键消息的测试工具。验证待测应用在这些随机性的输入面前是否会闪退或者崩溃)

7、Monkey弱点

  Monkey虽然可以根据一个指定的命令脚本发送按键消息,但其丌支持条件判断,也丌支持读取待测界 面的信息来执行验证操作。

8、Moneky 路径

  Monkey程序是Android系统自带的,其启动脚本是位于Android系统的/system/bin目录的Monkey文件,其jar包是位于Android系统的/system/framework目录的Monkey.jar文件。用户主要是通过adb命令来启动Monkey的,Monkey在运行时,会根据命令行参数的配置,生成伪随机的事件流,并在Android设备上执行对应的测试事件。同时,Monkey还会对测试系统进行监测,当出现以下三种情况时会进行特殊处理:

  • Monkey运行在特定包上,当监测到试图转到其他包的操作,将对其进行阻止。
  • Monkey将记录对应的错误日志,并根据命令行参数判断是停止运行还是继续运行。
  • application not responding)的错误,Monkey将记录对应的错误日志,并根据命令行参数判断是停止运行还是继续运行。
  • Monkey中还可以看到其执行过程报告和生成的事件。

9、Monkey启动步骤

1、检查设备连接状态(以夜神模拟器为例)

2、从上图看出,设备未连接,连接移动设备

3、再次查看设备连接状态

shell

5、进入到指定目录,命令:cd

6、输入 monkey命令看到如下提示则说明启动成功。

monkey

1、adb shell ps 查看全部在运行的进程

com.android.commands.monkey 进程PID

3、adb shell kill pid 杀掉monkey进程

11、monkey 命令

monkey命令格式如下:

$ adb shell

  • [options]monkey可传入的参数,是可选项(如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包)

<event-count>100就是执行100个伪随机事件,为必选项。

12、小结

您的肯定就是我进步的动力。推荐

个人公众号

微信群

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!