Monkey测试简介
1、Monkey测试简介
monkey是安卓命令行工具,它向系统发送伪随机的用户事件,例如:按
键的输入、触摸屏的输入、手势输入等操作来对设备上的程序进行压力
测试,检测程序多久的时间会发生异常。因此,monkey常常用来测试软
件的稳定性、健壮性。
Monkey 测试的特点:
1)、测试的对象仅为应用程序包,有一定的局限性。
2)、Monky测试使用的事件数据流是随机的,不能进行自定义。
3)、可对MonkeyTest的对象,事件数量,类型,频率等进行设置
2、案例1:
adb shell monkey -p com.android.browser -v 500 >log.text(从switch开始看)
详细命令
1) 参数 -p 指定一个或多个包
指定包之后,Monkey将只允许系统启动指定的APP。如果不指定包,Monkey将允许系统启动设备中的所有APP。
* 指定一个包: adb shell monkey -p com.htc.Weather 100 [100是事件计(即让Monkey程序模拟100次随机用户事件)]。
* 指定多个包:adb shell monkey -p com.htc.Weather –p com.htc.pdfreader -p com.htc.photo.widgets 100
* 不指定包:adb shell monkey 100
2) 参数 -v 指定日志详细
分为三级信息日志,-v -v -v三级日志最详细, -v一级日志缺省值信息量少
日志级别 Level0
* 示例 adb shell monkey -p com.ddinfo.ddmall –v 100,说明缺省值,仅提供启动提示、测试完成和最终结果等少量信息
* 日志级别 Level 1
示例 adb shell monkey -p com.ddinfo.ddmall –v -v 100,说明提供较为详细的日志,包括每个发送到Activity的事件信息
* 日志级别 Level 2
示例 adb shell monkey -p com.ddinfo.ddmall –v -v –v 100,说明最详细的日志,包括了测试中选中/未选中的Activity信息
3) 参数 -s 用于指定伪随机数生成器的seed值
如果seed相同,则两次Monkey测试所产生的事件序列也相同的。
* Monkey 测试1:adb shell monkey -p com.htc.Weather –s 10 100
Monkey 测试2:adb shell monkey -p com.htc.Weather –s 10 10
常见的错误:
ANR:无响应
崩溃:Exception
3.案例2
adb shell monkey -p com.android.browser -v -v --throttle 500 90
-v代表次数 多个-v可以指定mongkey等级
--throttle每个操作等待500ms
adb shell monkey -p com.android.browser -v -v --pct-touch 50 --pct-trackball 30 --throttle 500 90
--pct-touch 点击的百分比
--pct-trackball 滚轮的百分比
--ignore-crashes 忽略崩溃
--ignore-timeouts 忽略超时
4.案例3
CRASH:com.android.browser(pid2008)
Short Msg:java.lang.NullPointerException
Long Msg:java.lang.NullPointerException
**System appears to have crashed at event 88 of 600 using seed 10
日志说明在600个操作的88个里面出现了异常,用的种子是10。0就是伪随机数的种子。我们下次想用相同的操作序列再现这个问题,
就使用下面的命令:adb shell monkey -p 包 -s 10 600
Monkey测试简介的更多相关文章
- Monkey测试简介【转载】
转载:https://www.xuebuyuan.com/3182523.html 一.Monkey测试简介 Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸 ...
- [转]Monkey测试简介
转自:http://www.cnblogs.com/manuosex/p/3215270.html 在android手机上做自动化测试,monkey比cts,Android UnitTest 好用多了 ...
- 学习使用monkey 测试
一.Monkey测试简介Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压力测试,检测程序多久的时 ...
- monkey测试(转)
一.Monkey测试简介Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压力测试,检测程序多久的时 ...
- Android自带Monkey测试
Monkey是在模拟器上或设备上运行的一个小程序,它能够产生为随机的用户事件流,例如点击(click),触摸(touch),挥手(gestures),还有一系列的系统级事件.可以使用Monkey来给正 ...
- Android 自动化测试——Monkey测试
Android自带了很多方便的测试工具和方法,包括我们常用的单元测试.Robotium测试.Monkey测试.MonkeyRunner测试.senevent模拟等.这些方法对于我们编写高质量的APP十 ...
- Monkey测试的参数
一.Monkey测试简介 Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕.滑动Trackball.按键等操作来对设备上的程序进行压 力测试,检测程序多久 ...
- 手机monkey测试BUG重现及解决方法
目录 1.1 Monkey测试简介...1 1.2 Monkey程序介绍...1 1.3 Monkey命令的简单帮助...2 1.4 Monkey命令参数介绍...2 1.5 Monkey测试步骤.. ...
- monkey测试===Android测试工具Monkey用法简介(转载)
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行压力测试.Monkey ...
随机推荐
- linux中一些常用的目录简要说明
1.目录结构 /bin:binary的缩写,一些常用的命令如:ls.qwd.cp.cd等命令保存在这个文件内. /boot:启动linux时需要使用到的一些核心文件,以及一些镜像等,删除后系统将无法开 ...
- 使用python读取MS-SQL数据库
使用python读取MS-SQL中的数据,这里使用到模板pymssql. 因为不是python自带的模板,所以首先需要使用pip安装,对应命令:pip install pymssql 建立main.p ...
- 【druid 】数据库连接池
一.数据库连接池架构 二.数据库连接池的过滤器 spi的思想,加载配置文件的Filter druid.filters.default=com.alibaba.druid.filter.stat.Sta ...
- MySQL is running but PID file could not be found
在Linux 中,当你启动或者重启 MySQL 时,报 关于 PID file 的错误 解决方法 第一步:找到 mysql 中 data 目录下的 mysql-bin.index 文件,然后删除 ...
- 17款提高编码效率的CSS工具
摘要:作为WEB前端开发人员,你的工作可能很大一部分都在编写CSS代码,为了提高前端开发人员编写CSS代码的效率,编程文库从 网上搜集了17款可以提高你CSS代码效率的CSS工具,它们可以帮助你快速生 ...
- sed指令的奇淫技巧
查看某一个文件第5行和第10行sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行. 查看某文件中指定第几行内容可以用sed -n '100{p;q}' filen ...
- JavaScript 对象属性底层原理
对象属性类型 1. 数据属性 [[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性,特性默认值为true [[Enum ...
- [UE4]Overlap Event 碰撞事件
一.对于VR中角色的手模型,一般是在角色中另外添加一个球型碰撞体 二.并且一定要勾选“Generate Overlap Events(触发重叠事件)”选项(默认状态是勾选的) 三.添加开始碰撞事件 ...
- 【docker】服务随容器启动而自启动
场景: 有一个docker, 在该docker中有服务A,希望每次启动容器时服务A都随着容器启动.这样就不用每次都进入容器手动启动服务了. 方法: 1.需要在docker中添加一个启动服务脚本auto ...
- docker环境安装与开启远程访问
一,安装docker 1,服务器安装 docker yum install docker 直接yum安装版本太低 2,卸载:老版本的Docker在yum中名称为docker或docker-engine ...