Monkey是一款通过命令行来对我们APP进行测试的工具,可以运行在模拟器里或真机上。它向系统发送伪随机的用户事件流,实现对正应用程序进行压力测试。
官方介绍 :https://developer.android.com/studio/test/monkey.html
测试?这不是抢测试妹子的饭碗么?肯定不是啦

第一步:搭建环境:主要是安装和搭建java和sdk环境,说白了,对我们安卓开发来说,只要搭建好了Android开发环境,Monkey测试环境基本就是OK的了。可以参考:http://www.cnblogs.com/sylovezp/p/3623588.html
第二步:准备好要测试的项目,比如可以是一个.apk安装包,也可以是已经安装到手机上的软件 。
第三步:连接上Android测试设备,可以是模拟器,当然也可以是手机,通过adb 命令对测试项目进行Monkey测试。
–adb monkey测试相关命令介绍:——–

1,adb install xx.apk:把指定的安装包apk文件安装到测试设备中
2,adb shell monkey :给指定的设备发送压力测试,number是要测试的次数。执行这个命令的效果就相当于有个手指在你的手机上乱点。我尝试了10000次,结果费了好一会儿功夫才把手机恢复到我想到的效果。
3,adb shell monkey -p pkgname :同上面效果一样,只是对指定包名(pkgname)apk进行测试。
4,Monkey高级参数的应用
4.1.throttle参数:指定事件之间的间隔时间
adb shell monkey -throttle :milliseconds是时间值 ,单位毫秒
4.2.seed参数:伪随机数生成器的seed 值。
adb shell monkey -s :如果用相同的 seed 值再次运行 Monkey ,它将生成相同的事件序列。
4.3.touch:设置触摸事件
adb shell monkey -pct-touch :指定touch事件的百分比percent
4.4.motion:设置动作事件
adb shell monkey -pct-motion :指定motion事件的百分比percent
4.5.trackball:设置轨迹球事件
adb shell monkey -pct-trackball :指定轨迹球事件百分比percent
4.6.nav:导航事件设置
adb shell monkey -pct-nav :指定基本导航事件百分比percent
4.7.majornav:设置主要导航事件
adb shell monkey -pct-majornav :设定主要导航事件百分比percent,兼容中间键,返回键,菜单按键
4.8.syskeys:设置事件
adb shell monkey -pct-syskeys :设定系统事件百分比percent,比如HOME,BACK,拨号及音量调节等事件。
4.9.appswitch:启动Activity事件
adb shell monkey -pct-appswitch :设定启动activity的事件百分比percent
4.10.anyevent:不常用事件设置
adb shell monkey -pct-anyevent :设定不常用事件地百分比
4.11.crashes :程序崩溃事件设置
adb shell monkey -ignore-crashes :忽略崩溃和异常事件
4.12.timeouts:超时事件设置
adb shell monkey -ignore-timeouts :忽略超时事件
介绍了一些常用设置后,开始基本地Monkey之旅:
第一步:准备测试apk,如下图是我要进行测试的APK,放置在我的电脑D盘:

第二步:把测试设备(手机)与电脑保持连接,这个就不截图啦。
第三步:使用adb install 命令把要测试的apk安装到手机,当然你可以直接测试已经安装在手机上的apk。

第四步:使用上面的基本测试命令对安装好的monkey_test.apk进行Monkey测试。
adb shell monkey -p com.xx.xx 10 指测试10次,截图如下,运行期间你可以看到手机上apk被操作。

第五步,根据自己的需要,使用其它命令对apk进行测试:
比如通过adb shell monkey -v -p com.xx.xx 100来简单输出测试信息,如图

上面的百分比就是相应事件所占的比,还有其它诸如TOUCH事件等相关信息。
其它的测试命令就不贴了,工作中自己想怎么测试就使用相关的命令就可以。

monkey测试入门1的更多相关文章

  1. Android Monkey测试入门

    第一步:搭建环境:主要是安装和搭建java和sdk环境,说白了,对我们安卓开发来说,只要搭建好了Android开发环境,Monkey测试环境基本就是OK的了.可以参考:http://www.cnblo ...

  2. monkey测试入门2--测试步骤、常用参数、常规monkey命令

    <凤栖梧> 柳永 伫倚危楼风细细,望极春愁,黯然生天际.草色烟光残照里,无言谁会凭栏意? 拟把疏狂图一醉,对酒当歌,强乐还无味,衣带渐宽终不悔,为伊消得人憔悴. 简要步骤:adb devi ...

  3. Android Monkey测试入门<1>

    第一步:搭建环境:主要是安装和搭建java和sdk环境,说白了,对我们安卓开发来说,只要搭建好了Android开发环境,Monkey测试环境基本就是OK的了.可以参考:http://www.cnblo ...

  4. monkey测试入门3

    本文要感谢一起战斗过的点时小伙伴,程童鞋 打开开始 输入cmd 看到它的目录地址 然后把adb压缩包解压到该地址 插入数据线 打开手机设置打开开发者选项 打开USB调试 右键点击我的电脑 选择管理 左 ...

  5. 【初学python】使用python调用monkey测试

    目前公司主要开发安卓平台的APP,平时测试经常需要使用monkey测试,所以尝试了下用python调用monkey,代码如下: import os apk = {'j': 'com.***.test1 ...

  6. monkey之三:monkey测试测略(摘抄)

    一.分类 Monkey测试针对不同的对象,不同的目的,采用不同的测略方案. 测试类型分为: 应用程序的稳定性测试和压力测试 测试对象分为: 单个APK和多个APK集合 测试目的分为: 解决问题的测试( ...

  7. Android Monkey测试(转载)

    Monkey是一款通过命令行来对我们APP进行测试的工具,可以运行在模拟器里或真机上.它向系统发送伪随机的用户事件流,实现对正应用程序进行压力测试. 官方介绍 :https://developer.a ...

  8. 安卓手机APP压力monkey测试

    一.Monkey概述 Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中.它向系统发送伪随机的用户事件流(如按键输入.触摸屏输入.手势输入等),实现对正在开发的应用程序进行 ...

  9. Android应用程序Monkey测试

    Monkey是Android SDK中附带的一个测试工具:Monkey用于进行压力测试,软件开发人员结合monkey打印日志和系统日志,解决测试中出现的问题. Monkey测试的特点:所有事件都是随机 ...

随机推荐

  1. Language-Directed Hardware Design for Network Performance Monitoring——Marple

    网络监控困难 1.仅仅通过去增加特定的监控功能到交换机是不能满足运营商不断变化的需求的.(交换机需要支持网络性能问题的表达语言) 2.他们缺乏对网络深处的性能问题进行本地化的可见性,间接推断网络问题的 ...

  2. Linux系统之路——如何在服务器用U盘安装CentOS7.2(二)

    Linux系统之路——如何在服务器用U盘安装CentOS7.2(一) 说明: 截止目前CentOS 7.x最新版本为CentOS 7.2.1511,下面介绍CentOS 7.2.1511的具体安装配置 ...

  3. BZOJ5329:[SDOI2018]战略游戏(圆方树,虚树)

    Description 省选临近,放飞自我的小Q无心刷题,于是怂恿小C和他一起颓废,玩起了一款战略游戏. 这款战略游戏的地图由n个城市以及m条连接这些城市的双向道路构成,并且从任意一个城市出发总能沿着 ...

  4. Hive学习之路 (六)Hive SQL之数据类型和存储格式

    一.数据类型 1.基本数据类型 Hive 支持关系型数据中大多数基本数据类型 类型 描述 示例 boolean true/false TRUE tinyint 1字节的有符号整数 -128~127 1 ...

  5. 简单的XSS手动测试

    好吧,我也是初学者,写这个随笔,主要也是为了记录,自学到的点. 简单的案例,见http://www.cnblogs.com/trhimily/p/3898915.html 总结一下主要的点: 1. u ...

  6. select、poll 和epoll区别

    阻塞 I/O(blocking IO) 当用户进程调用了recvfrom这个系统调用,kernel就开始了IO的第一个阶段:准备数据(对于网络IO来说,很多时候数据在一开始还没有到达.比如,还没有收到 ...

  7. 【转】matplotlib制图——图例legend

    转自:https://www.cnblogs.com/alimin1987/p/8047833.html import matplotlib.pyplot as pltimport numpy as ...

  8. 新浪微博资深大牛全方位剖析 iOS 高级面试

    第1章 课程简介本章对这门课程所讲述内容进行概要介绍,其中包括课程目标.适合人群,课程特色.课程收获.课程安排等.整个课程学习完结后,有机会获得电话模拟面试及内推. 1-1 课前必读(不看会错过一个亿 ...

  9. python 工具 eclipse pydev工具安装。

    1.下载eclipse 2.下载java jre(这个会在运行eclipse的时候提示你下载,,根据系统型号下载就行) 3.下载完jre后,把目录下javaw.exe的路径添加到系统path环境变量中 ...

  10. 解决yum安装 openssl-devel时产生的Multilib version problems found错误(转)

    Error: Multilib version problems found. This often means that the root cause is something else and m ...