Monkey


1、定义:

monkey是android app自动化压力测试的命令行工具,可以运行在模拟器或真机上,表示随机事件测试。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),从而测试当前应用程序的稳定性、健壮性。

2、实现原理:

采用的是socket(套接字:基于传输层与应用层之间所抽象出的一层抽象层,TCP/UDP做了一层封装,基于这层封装再去做通讯:CS架构的数据传输)协议通讯完成模拟当前客户端中的应用程序所对应的一系列随机事件(滑动、点击、触摸、手势等),从而观察当前应用程序在模拟器中的运行情况的整个过程。

3、格式:

adb shell monkey [option1] [option2] [option3] count,count是向设备输入的随机事件数。

4、四类选项:

1)基本选项

-v:

详细日志

-v -v:

更详细日志

-v -v -v:

最详细日志

2)事件选项

①-s:

指定产生随机事件的种子值。相同的种子值,可以产生相同的事件序列。eg:adb shell monkey -v -s 1588909757099 100

--throttle <毫秒>:

在事件间指定间隔时间,减缓执行速度。eg:adb shell monkey -v --throttle 10 1000

--randomize-throttle<毫秒>:

随机间隔时间

--pct-touch

指定触摸事件的百分比。eg:adb shell monkey -v --pct-touch 30 1000(即30%)

--pct-motion

指定滑动事件的百分比。

3)约束选项

-p:

指定包名。eg:adb shell monkey -v -p 包名1 -p 包名2 100(100个随机事件随机分配在这两个app上)

4)调试选项

--ignore-crashes

忽忽略程序崩溃,继续执行。

--ignore-timeouts

忽略程序超时,继续执行。

--ignore-security-exceptions

忽略安全信任异常,继续执行。

5、综合习题:要求对当前模拟器中的主界面和淘宝实现稳定性的测试,测试要求执行事件数1000;在整个执行过程中,不能因程序崩溃、超时等原因中断测试;每个事件之间的间隔时间为3s;将所有随机事件的操作过程自定义一个标识符记录,并将所有操作过程中产生的详细日志写入到本地的文件中;要求所有的事件数都是activity相关的事件数。

adb shell monkey -p 主界面包名 -p 淘宝包名 --ignore-crashes --ignore-timeouts --throttle 3000 -s 666 -v -v -v --pct-appswitch 100 1000>d:\log\monkey_log.txt

APP压力测试,Monkey玩手机一顿猛点相关推荐

  1. Android App压力测试(Monkey和ADB)

    压力测试简介 压力测试是一种基本的质量保证行为,它是每个重要软件测试工作的一部分.压力测试的基本思路很简单:不是在常规条件下运行手动或自动测试,而是在计算机数量较少或系统资源匮乏的条件下运行测试.通常 ...

  2. Android APP压力测试(二) 之Monkey信息自动收集脚本

    转载-原文地址:   http://www.cnblogs.com/findyou/p/3936063.html Android APP压力测试(二) 之Monkey信息自动收集脚本 前言: 本文重点 ...

  3. App兼容性测试/MONKEY配置和安装

    App兼容性测试/MONKEY配置和安装 APP测试的兼容性测试 Web测试和App测试有什么区别 性能和稳定性工具---MONKEY 环境配置和安装 云测试平台 APP测试的兼容性测试 上线后进行兼 ...

  4. Android App压力测试

    前言:写这篇文章的目的,一是因为不少同学作为Android开发,很少会自己去做压力测试,不了解相关的技术,不知道压力测试是什么.怎么工作的:二是询问过身边的一些测试同学,他们进行压力测试的时候,很多情 ...

  5. Android App 压力测试 monkeyrunner

    Android App 压力测试 第一部分 背景 1. 为什么要开展压力测试? 2. 什么时候开展压力测试? 第二部分 理论 1. 手工测试场景 2. 自动测试创建 3. Monkey工具 4. AD ...

  6. monkey测试_adb monkey压力测试检测安卓手机的5大步骤,你知道吗?

    一.monkey是什么 1.monkey程序由android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar 2.Mon ...

  7. Loadrunner进行手机APP压力测试(亲测可行)

    最近因为公司要进行app上一个业务功能的测试,但是app的性能测试还没有执行过呢,所以在网上查阅了一大堆资料,搞得很焦虑.网上主要提供了三种方法,一种是通过wifi进行录制,一种是抓包录制,还有一种是 ...

  8. APP压力测试工具使用

    Monkey Monkey 是一个 Android 自动化测试小工具.(压力性能测试) 主要用于Android 的压力测试, 主要目的就是为了测试app 是否会Crash崩溃. Monkey测试教程 ...

  9. Android App压力测试(慕课网学习笔记)

    转载:https://blog.csdn.net/a923751813/article/details/72884826 一  背景 1. 为什么开展压力测试 目标1:提高产品稳定性(产品稳定性是一项 ...

最新文章

  1. 图说数据中心新风节能技术
  2. Spring测试支持和上下文缓存
  3. 无法使用集合初始化_Java集合类解析之Hashtable
  4. Java NIO学习篇之直接缓冲区和非直接缓冲区
  5. android日历便签,安卓手机上有日历与便签结合的app吗?
  6. android模拟器 bridge,ADB (Android Debug Bridge)简介
  7. AJAX最大的特点以及作用是什么?经典面试题
  8. 【题解】Luogu P5294 [HNOI2019]序列
  9. 搭建Windows red5流媒体服务器详解
  10. JAVA中什么 和 什么的区别--面试最经常问的(全)
  11. 开机出现grub rescue,修复办法
  12. 计算机无法启动故障树,发动机无法启动的故障树分析及诊断方法.docx
  13. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks论文翻译
  14. python实现循环赛日程表问题的算法_循环赛日程表问题
  15. 小程序获取附近IBeacon设备
  16. 【UTR #1】ydc的大树
  17. 谈谈区块链的常用架构
  18. 开启和关闭远程Windows系统3389端口
  19. MGD 调试 Lives2d 文字破碎问题 (MX2)
  20. python中init和属性_python类的属性不在\uyu init中__

热门文章

  1. DeepFlow: Deep Learning-Based Malware Detection by Mining Android Application for Abnormal Usage 2
  2. Natbib 参考文献样式
  3. 除了AI,你不该忽视Python在这4大领域的应用!
  4. 小红书推广方式和技巧有哪些?
  5. d3d纹理过滤器配置
  6. 微信小程序头像上传(一)
  7. Deployer php自动部署,PHP自动化部署工具-Deployer
  8. AP计算机编程路上的照明灯----学校老师哈佛博士的伊利诺伊大学学生如何说
  9. 科技型中小企业申报时间?
  10. 中鑫吉鼎|白领投资理财有哪些注意事项