monkey测试的相关的原理

monkey测试的原理就是利用socket通讯的方式来模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开发的软件。

参数:  -p

参数-p用于约束限制,用此参数指定一个或多个包(Package,即App)。如:

* 指定一个包: adb shell monkey -p com.example.sellclientapp  100
说明:com.example.sellClientAPP 为包名,100是事件计数(即让Monkey程序模拟100次随机用户事件)。
*指定多个包:adb shell monkey -p com.htc.Weather –p com.htc.pdfreader  -p com.htc.photo.widgets 100

参数:  -v

用于指定反馈信息级别(信息级别就是日志的详细程度),总共分3个级别,分别对应的参数如下表所示:

Level0(默认),除了启动、测试完成和最终结果外只提供较少的信息。 -v

Level1,提供了较为详细的测试信息,如逐个发送到Activity的事件信息。-v -v

Level2,提供了更多的设置信息,如测试中选中或未选中的Activity信息 -v -v -v

参数:-s <seed>

作用:伪随机数生成器的seed值。如果用相同的seed值再次运行monkey,将生成相同的事件序列。如:

adb shell monkey -s 12345 -v 10

参数:--throttle <milliseconds>

在事件之间插入固定的时间(毫秒)延迟,你可以使用这个设置来减缓Monkey的运行速度,如果你不指定这个参数,则事件之间将没有延迟,事件将以最快的速度生成。

adb shell monkey --throttle 300 -v 10
(常用参数,一般设置为300毫秒,原因是实际用户操作的最快300毫秒左右一个动作事件,所以此处一般设置为300毫秒)

参数:--ignore-crashes

应用发生崩溃或异常时Monkey会停止运行。如果设置此项,Monkey将继续发送事件给系统,直到事件计数完成。 

参数:--ignore-timeouts

应用程序发生任何超时错误(如“Application Not responding”对话框)Monkey将停止运行,设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

参数:--ignore-security-exception 

当程序发生许可错误(例如启动一些需要许可的Activity)导致的异常时,Monkey将停止运行。设置此项,Monkey将继续发送事件给系统,直到事件计数完成。

参数:--kill-process-after-error

当Monkey由于一个错误而停止时,出错的应用程序将继续处于运行状态。设置此项,将会通知系统停止发生错误的进程。注意,正常(成功)的结束,并没有停止启动的进程,设备只是在结束事件之后简单的保持在最后的状态。

【monkey】mokey常用命令<一>的更多相关文章

  1. Monkey基本常用命令整理

    adb shell monkey   -v 500  >F:/monkeylog2018.txt    -P表示包名   -V表示输出日志的详细级别  一个-V表示一级 递增  >输出日志 ...

  2. monkey简介与最常用命令

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

  3. monkey常用命令实例

    一.常用命令的使用 1.monkey进行压力测试的命令是什么呢? adb shell monkey -p <packagename> <count> eg: adb shell ...

  4. 【Monkey】Monkey稳定性测试常用命令

    Monkey稳定性测试常用命令: 1.adb shell monkey n 2.adb shell monkey -p  com.android.calculator2 1000 3.adb shel ...

  5. adb、monkey常用命令

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

  6. 想玩 Android 开发板?这些常用命令你不知不行!

    2019-04-19 关键字:Android机顶盒常用命令.Linux命令 笔者早年间从事 Android 机顶盒开发工作,那会刚毕业,技术也比较菜,工作过程中遇到过不少困难,不过所幸当时就有做笔记的 ...

  7. adb 常用命令-转载

    转自:https://blog.csdn.net/suxing_ing/article/details/54907860 显示当前运行的全部模拟器:adb devices 获取序列号:adb get- ...

  8. adb 环境配置 常用命令 总结

    配置环境变量 右键我的电脑 -> 属性 -> 高级 -> 环境变量 -> Path 在Path中添加Android SDK安装路径中 adb.exe 的路径,例如[\sdk\p ...

  9. Android开发调试常用命令列表

    Android开发调试常用命令列表 adb命令 am am start -n com.iflytek.autofly.account/.ui.MainActivity am start -n com. ...

随机推荐

  1. LINUX实践--ELF分析

    一.ELF文件头(定义在/usr/include/elf.h)中 二.实践部分 第一行 对应e_ident[EI_NIDENT]:实际表示内容为7f45 4c46 0101 0100 0000 000 ...

  2. kernel: swapper: page allocation failure. order:1, mode:0x20

    场景:领导电话通知,我们的主站宕机了,到家后从另外一台机器上ssh一直处于等待状态,开始怀疑机器的负载比较高,后查看监控机器,发现网卡.cpu.nginx连接数.....通通都没有数据了,显然不是负载 ...

  3. 四种常见的 POST 提交数据方式 专题

    定义和用法 enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码.默认地,表单数据会编码为 "application/x-www-form-urlencoded". ...

  4. springboot属性类自动加载配置文件中的值

    springboot属性类自动加载配置文件中的值,如Person类加载在yml中配置的name,age等属性值,可以通过如下步骤获取: 类上添加@ConfigurationProperties注解,p ...

  5. CF_863_F(Netflow)

    codeforces_863_F 题目大意:给出一个数组的大小(n<=50),以及每个位置填数的范围限制(若无限制,即为1-n),最后求填出数组的最小花费,定义总花费为数组中每个数出现次数的平方 ...

  6. spring boot2 基于百度云apiface实现人脸检测与认证2

    接上一篇,上篇只实现了人脸的认证,接下来实现人脸的检测. 原理介绍: 把摄像头抓拍的图像上传到服务器,服务器把图像上传到百度云,百度云返回识别出的人脸的数量和位置,前端根据服务端的返回,在图像中画出人 ...

  7. MAC终端安装grunt--javascript世界得构建工具

    祝贺我成为前端啦!~~从年前得小测试到今年得前端,成功转型!我真是一个进步得好青年,好少女! 这两天出去受虐,面了两家前端,表现非常不好,还是回到我现在得公司好好沉淀技术,做前端,要经常性得整理总结, ...

  8. 前端基础3:js篇(基础及算法)

    1.js闭包相关: 题1: for (var i = 0; i < 5; i++) { setTimeout(function() { console.log(i); }, 1000 * i); ...

  9. Codeforces Round #418 (Div. 2)D

    给n个圆要么包含,要么相分离,没有两个公共点,当成一棵树,把包含的面积大的放在上面 如图最上面的par记为-1,level记为0,当par==-1||level==1时就加否则减, 就是第一,二层先加 ...

  10. 浅析使用vue-router实现前端路由的两种方式

    关于vue-router 由于最近的项目中一直在使用vue,所以前端路由方案也是使用的官方路由vue-router,之前在angularJS项目中也是用过UI-router,感觉大同小异,不过很显然v ...