一、常用命令的使用

1.monkey进行压力测试的命令是什么呢?

  • adb shell monkey -p <packagename> <count>

eg: adb shell monkey -p com.android.calculator 100

2.如何重现Crash、ANR过程呢?

  • monkey其实是伪随机过程,添加参数 -s seed 可保证执行的随机序列一样

eg:adb shell monkey -s 123456 -p com.android.calculator 100

3.如何提取Crash、ANR信息呢?

  • 将monkey执行过程中的日志重定向到文件,注:-v 可1个、2个或3个,3个的时候有特别详细的信息

eg:adb shell monkey -v -v -v -s 123456 -p com.android.calculator 100 > D:\rizhi\20190325.log

4.如何设置monkey运行8个小时呢?

  • 每隔300ms点击一次,可添加参数 --throttle 300 (每300ms点击一次)

eg:adb shell monkey -v -v -v --throttle 300 -s 123456 -p com.android.calculator 100

  • 最后再根据300ms点击一次,要运行8h,去计算要点击多少次

5.在Crash/ANR后,如何继续执行?

  • 添加忽略Crash参数, --ignore-crashes
  • 添加忽略ANR参数,   --ignore-timeouts

eg: adb shell monkey -v -v -v --throttle 300 -s 123456 --ignore-crashes --ignore-timeouts -p com.android.calculator 100

6.如何让monkey执行指定的事件呢?

  • 0:触摸事件百分比,即参数--pct-touch                           ---常用参数
  • 1:滑动事件百分比,即参数--pct-motion                         ---常用参数
  • 2:缩放事件百分比,即参数--pct-pinchzoom                  ---常用参数
  • 3:轨迹球事件百分比,即参数--pct-trackball                   ---不常用参数
  • 5:基本导航事件百分比,即参数--pct-nav                      ---不常用参数
  • 6:主要导航事件百分比,即参数--pct-majornav             ---不常用参数
  • 7:系统事件百分比,即参数--pct-syskeys                       ---不常用参数
  • 8:Activity启动事件百分比,即参数--pct-appswitch        ---不常用参数
  • 9:键盘翻转事件百分比,即参数--pct-flip                       ---不常用参数
  • 10:其他事件百分比,即参数--pct-anyevent                    ---不常用参数

eg: adb shell monkey -v -v -v --throttle 300 -s 123456 --ignore-crashes --ignore-timeouts --pct-touch 100 -p com.android.calculator 100
eg: adb shell monkey -v -v -v --throttle 300 -s 123456 --ignore-crashes --ignore-timeouts --pct-touch 50 --pct-motion 50 -p com.android.calculator 100

二、结束monkey进程

monkey会一直运行,那么如何结束monkey进程呢?

>adb shell

# ps | grep monkey

# kill -9 PID号(第二个数字)

monkey常用命令实例的更多相关文章

  1. adb、monkey常用命令

    adb.monkey常用命令 1.查看连接设备 adb devices 2.连接android模拟器 adb connect 127.0.0.1:62001 3.安装软件 adb install 这个 ...

  2. 【转贴】Windows常用命令实例

    Windows常用命令实例 https://www.cnblogs.com/linyfeng/p/6261629.html 熟练使用DOS常用命令有助于提高工作效率. 1.windows+R:打开运行 ...

  3. Monkey常用命令详解

    使用monkey help 命令查看命令参数,如下: C:\Users\chenfenping>adb shell monkey -help usage: monkey [-p ALLOWED_ ...

  4. Windows常用命令实例

    熟练使用DOS常用命令有助于提高工作效率. 1.windows+R:打开运行程序窗口 2.cmd:调用DOS命令窗口 3.mstsc:调用远程桌面命令窗口.mstsc -v 192.168..0.1 ...

  5. Mysql -- SQL常用命令实例

    sql: structured query language(结构化查询语言) 用户名和密码:root 创建一个名称为mydb1的数据库. create database mydb1; 查看所有数据库 ...

  6. LINUX 常用命令(一)

    1.LINUX系统常用命令实例: A0 LINUX命令分内置命令和非内置命令! 一般而言,内置命令就是指在/bin ./usr/bin下系统默认的命令! 非内置命令需要加上命令的绝对路径执行!比如我们 ...

  7. Linux常用命令02(远程管理)

    01 关机/重启 序号 命令 对应英文 作用 01 shutdown 选项 时间 shutdown 关机/重新启动 1.1 shutdown shutdown 命令可以 安全 关闭 或者 重新启动系统 ...

  8. linux常用命令加实例大全

    目  录引言    1一.安装和登录    2(一)    login    2(二)    shutdown    2(三)    halt    3(四)    reboot    3(五)    ...

  9. monkey简介与最常用命令

    1.monkey简介 monkey是SDK附带的一个用来做压力测试的工具,monkey测试所有事件都是随机发生的,不带有主观性,测试人员主要通过跑monkey后打印出来的日志分析来发现问题 2.mon ...

随机推荐

  1. eShopOnContainers 知多少[2]:Run起来

    环境准备 Win10(开启Hyper-V) .NET Core SDK Docker for Windows VS2017 or VS Code Git SQL Server Management S ...

  2. 机器学习基石笔记:01 The Learning Problem

    原文地址:https://www.jianshu.com/p/bd7cb6c78e5e 什么时候适合用机器学习算法? 存在某种规则/模式,能够使性能提升,比如准确率: 这种规则难以程序化定义,人难以给 ...

  3. jquery删除内容是动态修改序号

    如图,点击删除图标的时候要删除当前的一条记录,同时界面上的序号要动态的排列好 以下是html结构: jquery实现思路: 首先,需要获取到当前要删除盒子的序号$indexCur,然后遍历父盒子,取出 ...

  4. 200行代码,7个对象——让你了解ASP.NET Core框架的本质

    2019年1月19日,微软技术(苏州)俱乐部成立,我受邀在成立大会上作了一个名为<ASP.NET Core框架揭秘>的分享.在此次分享中,我按照ASP.NET Core自身的运行原理和设计 ...

  5. HandlerInterceptor拦截实现对PathVariable变量的读取

    Http请求拦截作用 拦截后可以修改请求体 拦截后可以作一些其它统一的操作 问题提出 对于很多时间需要拦截很多Http请求,然后去获取一些参数,这些参数可能是querystring串,也可能是路由上的 ...

  6. springboot~hazelcast缓存中间件

    缓存来了 在dotnet平台有自己的缓存框架,在java springboot里当然了集成了很多,而且缓存的中间件也可以进行多种选择,向redis, hazelcast都是分布式的缓存中间件,今天主要 ...

  7. SpringBoot整合Netty并使用Protobuf进行数据传输(附工程)

    前言 本篇文章主要介绍的是SpringBoot整合Netty以及使用Protobuf进行数据传输的相关内容.Protobuf会简单的介绍下用法,至于Netty在之前的文章中已经简单的介绍过了,这里就不 ...

  8. [开源]Entity Framework 6 Repository 一种实现方式

    在使用Entity Framework这种ORM框架得时候,一般结合Repository仓储形式来处理业务逻辑:虽然这种模式带来很多好处,但是也会引发一些争议,在此抛开不谈,小弟结合项目经验来实现一下 ...

  9. Java中实现多线程的四种方式

    Java多线程实现方式主要有四种:继承Thread类.实现Runnable接口.实现Callable接口通过FutureTask包装器来创建Thread线程.使用ExecutorService.Cal ...

  10. docker run 之后执行多条命令

    执行 ls docker run microsoft/dotnet ls && cd /root 执行 多条使用sh -c命令 在run后面加了一个sh -c命令,后面直接加多条语句即 ...