Android自动化测试手段之Monkey
- 格式:docx
- 大小:27.96 KB
- 文档页数:13
什么是Monkey测试?Monkey测试: 是Andriod是⾃动化测试的⼀种⼿段,Monkey测试本⾝⾮常简单,就是模拟⽤户的按键输⼊,触摸屏输⼊,⼿势输⼊等,看设备多久时间会出现异常(⽐如调节⾳量,亮度调节,横竖屏切换,截图,播放⾳乐)为什么要做Monkey测试?模拟⽤户,稳定性 模拟⼈的操作 模拟⼈长时间的测试 模拟⼈不同场景操作怎么去做Monkey测试?准备⼯作:1)电脑端:androidsdk/JDK配置环境变量2)⼿机端:⼿机选择3)建议真机测试,学习可以试⽤模拟器(夜神,逍遥,天天,雷电),⼯作不要⽤个⼈⼿机和模拟机monkey测试不需要root,也不建议刷机测试机:获取root权限获取底层数据4)配置:版本号,连续点击5-7次,开发者模式开启USB调试:开发者选项------>打开USB调试连接⼿机:USB/Wifi同⼀局域⽹cmd命令:输⼊adb devivcesdevices:表⽰正常offline:拔插USB即可模拟器---模拟器升级到最新版本no devices:驱动unauthorized:未授权可能遇到的问题?端⼝占⽤,检查端⼝占⽤的命令:netstat-ano|findstr “5037”360、⼿机助⼿可能会占⽤5037的端⼝,卸载掉Monkey测试:简单命令参数:1.count 事件数,必填2.--ignore-crashes:崩溃,闪退--ignore-timeouts:超时,⽆响应如果使⽤这个参数,发⽣奔崩溃或者⽆响应的时候,会结束应⽤进程,重新打开继续执⾏,直到事件次数结束不使⽤该参数,发⽣上述问题,monkey测试赛停⽌在问题界⾯--缺乏稳定性测试的意义adb shell monkey:得到所有monkey的参数--ignore-security-exceptions :安全认证忽略测试过程中发⽣的安全⽅⾯的认证等的问题,⼀旦发⽣该类的问题后,结束app的进程,或者继续操作,知道设置的次数完成,⼀般情况都要⽤上怎么固定到具体的app?-p包名,指定到具体的某⼀个appadb shell pm list package -3 获取⽤户安装的第三⽅app的包名adb shell pm list package -s 获取系统的app包名确认包名:adb shell dumpsys activity| find “mFocusedActivity”显⽰当前正在使⽤的app-s SEED 定义明确的seedN个seed每⼀个seed可能会发N个bugbug总量会特别多--不利于测试,稳定性验证======>要定义唯⼀seed值,monkey测试赛从头到尾都⽤这个seed值[-v [-v] ... ]:⽇志的详细程度共3个v越多,⽇志越详细常⽤命令:-p 指定包名 com.hpbr.bosszhipinadb shell monkey -p com.hpbr.bosszhipin 200----> boss直聘App,执⾏200次的事件操作-v 输出⽇志的级别:-v -v -v 根据项⽬的质量要求,⼀般-v -v。
1、Monkey测试介绍Monkey测试是Android平台自动化测试的一种手段,通过Monkey程序模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,检测程序多久的时间会发生异常。
传统意义上,Monkey测试主要针对的是应用的健壮性与稳定性,它通过大量的随机的用户事件来检测应用是否会异常。
主要使用Monkey测试来进行内存泄露检查。
2、Monkey测试执行Monkey测试可分为环境配置、测试执行、结果分析3步骤。
2.1、环境配置MONKEY测试使用的是ADB命令,因此只需要配置ADB环境即可。
2.2、测试准备与执行在Monkey测试前,必须进行以下准备手机屏幕超时设置为30分钟,防止手机进入锁屏状态。
插入SIM卡和存储卡后将手机开机,开启ADB模式,连接到PC(存储卡剩余空间尽量留大,建议1G以上)开启系统log。
(具体可依据每个机型平台决定)在PC上执行运行—>CMD,在弹出的命令窗口中,输入adb devices,检查设备是否连接在弹出的命令窗口中,输入adb shell,进入Linux Shell2.3、结果检查与分析测试结束后,需要将手机连接PC,拷贝以下文件:info.txt:此文件在手机上的SDCARD中,主要记录了MONKEY测试时发送的各种事件,如触摸事件的位置等等。
error.txt:此文件在手机上的SDCARD中,主要记录了MONKEY测试时产生的一些ANR、强制关闭等异常。
LOG文件:此文件在手机上的LOG文件夹中中,主要主要记录程序对MONKEY测试时的响应情况。
我们需要对这3个文件进行分析整理,以便提交开发人员处理。
2.3.1、检查测试是否完成通过info.txt文件,可以查看Monkey是否执行成功。
如下图2.3.2、结果分析整理前文有提及,我们目前执行Monkey测试的目的是为了检查是否有内存泄露,而这类问题主要是通过Log 文件来体现的。
利⽤Monkey命令操作屏幕快速滑动⼀、Monkey测试简介Monkey测试是Android平台⾃动化测试的⼀种⼿段,通过Monkey程序模拟⽤户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进⾏压⼒测试,检测程序多久的时间会发⽣异常。
⼆、Monkey程序介绍1) Monkey程序由Android系统⾃带,使⽤Java语⾔写成,在Android⽂件系统中的存放路径是:/system/framework/monkey.jar;2) Monkey.jar程序是由⼀个名为“monkey”的Shell脚本来启动执⾏,shell脚本在Android⽂件系统中的存放路径是:/system/bin/monkey;这样就可以通过在CMD窗⼝中执⾏:adb shell monkey {+命令参数}来进⾏Monkey测试了。
列表中有⼗⼏种 item,也有⼏种重型控件⽆限滚动的⽔平 banner 和可以⽆限垂直滚动的类似淘宝头条的控件。
担⼼会出现内存泄露或者其他问题,于是⽤ mokey 测试快速滑动来发现隐藏问题。
运⾏monkeyrunner fling.py查看 android monitor 内存也都释放掉了测试代码如下代码如下 fling.py#!/usr/bin/env monkeyrunnerimport timefrom com.android.monkeyrunner import MonkeyRunner, MonkeyDevicedevice = MonkeyRunner.waitForConnection(5)# fling updef scrollUpFling():device.touch(100, 500, MonkeyDevice.DOWN)device.touch(100, 100, MonkeyDevice.MOVE)device.touch(100, 100, MonkeyDevice.UP)print "fling up"# fling downdef scrollDownFling():device.touch(100, 400, MonkeyDevice.DOWN)device.touch(100, 500, MonkeyDevice.MOVE)device.touch(100, 500, MonkeyDevice.UP)print "fling down"def fling():for i in range(1,1000):scrollUpFling()time.sleep(0.1)scrollDownFling()time.sleep(0.1)fling()以上所述是⼩编给⼤家介绍的利⽤ Monkey 命令操作屏幕快速滑动,希望对⼤家有所帮助,如果⼤家有任何疑问请给我留⾔,⼩编会及时回复⼤家的。
Android自动测试之monkeyrunner工具monkeyrunner工具前言:最近开始研究Android自动化测试方法,对其中的一些工具、方法和框架做了一些简单的整理,其中包括android测试框架、CTS、Monkey、Monkeyrunner、benchmark、其它test tool 等等。
因接触时间很短,很多地方有不足之处,希望能和大家多多交流。
一、什么是monkeyrunnermonkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。
通过monkeyrunner,您可以写出一个Python程序去安装一个Android应用程序或测试包,运行它,向它发送模拟击键,截取它的用户界面图片,并将截图存储于工作站上。
monkeyrunner工具的主要设计目的是用于测试功能/框架水平上的应用程序和设备,或用于运行单元测试套件,但您当然也可以将其用于其它目的。
二、monkeyrunner工具同Monkey工具的差别Monkey:Monkey工具直接运行在设备或模拟器的adb shell中,生成用户或系统的伪随机事件流。
monkeyrunner:monkeyrunner工具则是在工作站上通过API定义的特定命令和事件控制设备或模拟器。
三、monkeyrunner的测试类型1、多设备控制:monkeyrunner API可以跨多个设备或模拟器实施测试套件。
您可以在同一时间接上所有的设备或一次启动全部模拟器(或统统一起),依据程序依次连接到每一个,然后运行一个或多个测试。
您也可以用程序启动一个配置好的模拟器,运行一个或多个测试,然后关闭模拟器。
2、功能测试:monkeyrunner可以为一个应用自动贯彻一次功能测试。
您提供按键或触摸事件的输入数值,然后观察输出结果的截屏。
3、回归测试:monkeyrunner可以运行某个应用,并将其结果截屏与既定已知正确的结果截屏相比较,以此测试应用的稳定性。
Monkey 测试性能报告软件简介Monkey测试是Android自动化测试的一种手段。
Monkey测试自己特别简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设施多长时间会出异样。
当 Monkey 程序在模拟器或真切设施运转的时候,程序会产生必定数目或一准时间内的随机模拟用户操作的事件 , 如点击,按键,手势等,以及一些系统级其他事件。
往常也称随机测试或许稳固性测试。
软件特色monkey 测试的原理就是利用socket 通信的方式来模拟用户的按键输入,触摸屏输入,手势输入等,看设施多长时间会出异样。
当Monkey程序在模拟器或设施运转的时候,假如用户出发了比方点击,触摸,手势或一些系统级其他事件的时候,它就会产生随机脉冲,所以能够用Monkey用随机重复的方法去负荷测试你开发的软件。
测试事例Windows 下:1、经过 eclipse 启动一个Android 的emulator2、在命令行中输入:adb devices查察设施连结状况C:\Documents and Settings\Administrator>adb devicesList of devices attachedemulator-5554device精选文库3、在有设施连结的前提下,在命令行中输入:adb shell进入 shell 界面C:\Documents and Settings\Administrator>adb shell#4、查察 data/data文件夹下的应用程序包。
注:我们能测试的应用程序包都在这个目录下面C:\Documents and Settings\Administrator>adb shell#23android.tts45、以作为对象进行MonkeyTest#monkey -p com.android.calculator2 -v 500此中 -p 表示对象包–v表示事件数目运转过程中, Emulator中的应用程序在不停地切换画面。
几款Android应用自动化测试工具-博为峰网校几款Android 应用自动化测试工具简述:本文介绍几款流行的 Android应用自动化测试工具。
Monkey测试:随机测试,压力测试,运行在模拟器或实际设备中。
MonkeyRunner测试:操作简单,可录制测试脚本,可视化操作,主要生成坐标的自动化操作,移植性不强Robotium 测试Ronaorex 测试Appium 测试UI Automator 测试TestBird测试1、Monkey 测试Monkey 即猴子,Monkey 测试,就像一只猴子,在电脑面前,乱敲键盘在测试。
Monkey 测试主要用于Android 应用程序压力测试的小工具,主要目的就是为了测试app是否会Crash。
Monkey 测试原理:Monkey 是 Android 中的一个命令行工具,可以运行在模拟器里或实际设备中。
它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。
通常也称随机测试或者稳定性测试。
Monkey 测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。
1 > Monkey 特征A. 测试的对象仅为应用程序包,有一定的局限性。
B. Monky 测试使用的事件流数据流是随机的,不能进行自定义。
C. 可对MonkeyTest的对象,事件数量,类型,频率等进行设置。
D.Monkey 虽可根据一个指定的命令脚本发送按键消息,但其不支持条件判断,也不支持读取待测界面的信息来执行验证操作。
E.Monkey 运行在设备或模拟器上面,可以脱离PC运行,验证待测应用在这些随机性输入面前是否会闪退或者崩溃。
2 > Monkey 程序介绍① Monkey 程序由 Android 系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar;② Monkey.jar 程序是由一个名为“ monkey ”的Shell脚本来启动执行,shell脚本在Android 文件系统中的存放路径是:/system/bin/monkey;③ Monkey 命令启动方式:a. 可以通过 PC 机 CMD 窗口中执行: adb shell monkey {+命令参数}来进行Monkey测试b. 在PC上 adb shell进入Android系统,通过执行monkey {+命令参数}来进行Monkey 测试c. 在Android机或者模拟器上直接执行monkey命令,可以在Android机上安装Android终端模拟器④对特定APP包进行测试的命令为 adb shell monkey -p3 > 实例①测试前提条件a. 将手机恢复出厂设置b. 恢复出厂设置后,进入设置-->关于手机-->高级设置-->勾选‘保持唤醒状态’c. 在设置->安全中设置解锁图案以及PIN码d. 连接 adb toole. 手机开启后台log(*#*#3646633#*#*),开启main log,,mobile log和net log②测试步骤a. 使用USB线连接手机和电脑b. 在电脑中输入Monkey命令:adb shell monkey -p --throttle 380 -v -s3500 300000 >C:\monkey_log.txtc. 在Monkey结束以后查看它停留的界面并且做一些简单的测试,如拨打电话,发送信息等③测试结果Monkey的测试结果可以通过monkey_log.txt 查看,如果测试结果正常,在log最后一行会有monkey finished显示并且手机运行正常。
超全的Monkey测试教程——简介篇(⼀)⽬录Monkey测试简介1. 什么是Monkey测试2. Monkey在哪⾥3. ⼿机如何与monkey通讯4. Monkey测试适⽤于什么时候1.什么是monkey测试Monkey测试呢,⼜称“猴⼦测试”,可以⽤来对Android⼿机或应⽤做压⼒测试。
顾名思义,它可以像猴⼦⼀样上蹿下跳、盲⽬的对应⽤做测试,校验应⽤的稳定性和健壮性。
它向系统发送伪随机的⽤户事件流,可以通过⾃动化⾼效地弥补app稳定性对测试⼈⼒和测试时间的要求。
伪随机:因为可以通过设置相同的seed值来⽣成相同的事件序列,因此成为伪随机事件流包括:点击、滑动、Application切换、横竖屏、应⽤关闭、按键输⼊、触摸屏输⼊等官⽹⽂档:https:///studio/test/monkey.html2.Monkey测试在哪⾥每台android⼿机⾥都有Monkey⼯具,但是我们是看不到的,因为Monkey不是⼀个可视化的⼯具,例如⼿机⾥的微信,这是⼀个可视化的,能打开,有图形化界⾯,但是Monkey没有。
3.⼿机与Monkey如何通讯我们需要借助 ADB 才能与Monkey进⾏通讯。
4.什么是ADB全称是 Android Debug Bridge,就是起到调试桥的作⽤。
⽤来操作android设备的。
adb ⼯具存在SDK中,也可以单独下载。
借助adb⼯具,我们可以管理设备或⼿机模拟器的状态,还可以进⾏很多⼿机操作,⽐如安装软件,系统升级,运⾏shell命令等等,其实简⽽⾔之,adb就是连接Android⼿机与PC端的桥梁,可以让⽤户在电脑上对⼿机进⾏全⾯的操作。
如下图:5.Monkey测试适合什么适合应⽤可⽤于产品早期,在产品不稳定、崩溃问题较多,通过monkey能尽早发现,且有清晰的错误⽇志,便于开发排查解决问题。
在就是⽤于应⽤发布前,作为最后⼀轮测试,以上就是Monkey测试的简介,如有不⾜和错误之处望⼤家指正,⼤家共同学习和进步~Monkey测试实战请看下⼀篇吧~参考博客:https:///u011541946/article/details/77142045。
monkey事件分发原理-回复Monkey事件分发原理详解事件分发是软件开发中非常重要的一个概念,特别是在图形用户界面(GUI)和用户交互的应用程序中。
它负责将用户的操作或者系统的事件送达到相应的处理程序,以便进行相应的处理。
在Android开发中,Monkey事件分发是其中一个非常关键的部分,它是模拟用户交互和测试应用程序的工具。
本文将一步一步地详解Monkey事件分发原理,帮助读者了解其工作原理和应用场景。
一、什么是Monkey事件?在Android开发中,Monkey是一个用于模拟用户交互的命令行工具。
它可以产生用户事件,例如点击、滑动、长按等,以及键盘事件,例如输入文本、按下按键等。
Monkey事件可以自动化地测试应用程序的稳定性和性能,同时也可以用于生成随机事件进行压力测试。
二、Monkey事件分发原理事件分发是Android系统中的一个核心组成部分。
它的主要任务是将用户的操作或者系统的事件分发给适当的处理程序。
Monkey事件分发的原理基本上与正常的用户事件分发相同,只不过事件是由模拟生成的。
Monkey事件分发的过程可以分为以下几个步骤:1. Monkey事件生成:Monkey工具会根据预先设定的参数,随机生成一系列的事件。
这些事件包括触摸屏事件、轨迹球事件、按键事件等。
Monkey事件生成器会生成具有随机性的事件序列,模拟用户的真实操作。
2. 事件分发链:Android系统中有一个事件分发链,它由一系列View和ViewGroup组成。
当发生事件时,事件会从分发链的顶部开始传递,一直传递到最底层的View。
在事件分发的过程中,每个View都有机会处理该事件。
如果View成功处理了事件,事件将停止传递,否则事件将继续向下传递。
3. 事件类型判断:Monkey事件分发会判断生成的事件类型,例如是点击事件、滑动事件还是按键事件。
根据不同的事件类型,事件会被分发给不同的处理程序。
4. 事件分发优先级:在事件分发过程中,每个View都可以根据自己的需求设置优先级,来决定是否拦截事件或者将事件向上传递。
monkey命令前⾔Monkey是 Android SDK 提供的⼀个命令⾏⼯具,是 Android ⾃动化测试的⼀种⼿段。
Monkey 命令通过向安卓设备/安卓模拟器发送伪随机的⽤户事件流(如按键输⼊、触摸屏输⼊、⼿势输⼊等)。
对Android APP做稳定性(压⼒)测试。
【主要是为了测试app是否存在⽆响应和崩溃闪退等异常情况。
】等产品处于稳定状态,没有太多BUG后,⼀般使⽤monkey命令去测试产品的稳定性、健壮性(是否会发⽣闪退、崩溃和⽆响应等问题),实现对正在开发的安卓应⽤程序进⾏压⼒测试和稳定性测试。
获取测试⽇志的ANR、CRASH、Exception信息,提供给开发⼈员分析和定位问题。
【⼀般⼀次Monkey测试中0 ANR 、0 CRASH是测试标准】Monkey测试是⼀种为了测试软件的稳定性、健壮性的快速有效的⽅法。
Monkey 简介①Monkey 就是Android SDK中附带的⼀个命令⾏⼯具,可以运⾏在Android模拟器⾥或实际的Android设备中。
②Monkey向系统发送伪随机的⽤户事件流(如按键输⼊、触摸屏输⼊、⼿势输⼊等),实现对正在开发的应⽤程序进⾏压⼒测试。
③Monkey测试是⼀种为了测试软件的稳定性、健壮性的快速有效的⽅法。
④Monkey⽤于进⾏压⼒测试。
开发⼈员可以结合Monkey打印的⽇志和系统打印的⽇志,分析测试中的问题。
Monkey的特点①Monkey 程序是由 Android 系统⾃带,使⽤ Java 语⾔写成。
在Android⽂件系统中的存放路径是/system/framework/monkey.jar。
②Monkey.jar程序是由⼀个名为“monkey”的Shell脚本来启动执⾏,shell脚本在Android⽂件系统中的存放路径是/system/bin/monkey。
总结:通过①②说明monkey可以直接通过打包进测试⼯具中,可以被测试⼈员直接使⽤。
Android自动化测试手段之Monkey Monkey测试是Android自动化测试的一种手段,Monkey测试本身非常简单,就是模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。
当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开发的软件.
最简单的方法就是用用下面的命令来使用Monkey,这个命令将会启动你的软件并且触发500个事件. $ adb shell monkey -v -p your.package.name 500
Monkey是一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流,实现对正在开发的应用程序进行压力测试。Monkey包括许多选项,它们大致分为四大类:
• 基本配置选项,如设置尝试的事件数量。 • 运行约束选项,如设置只对单独的一个包进行测试。 • 事件类型和频率。 • 调试选项。
在Monkey运行的时候,它生成事件,并把它们发给系统。同时,Monkey还对测试中的系统进行监测,对下列三种情况进行特殊处理:
• 如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
• 如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。 • 如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。
Monkey基本用法 : 可以通过开发机器上的命令行或脚本来启动Monkey。由于Monkey运行在模拟器/设备环境中,所以必须用其环境中的shell来进行启动。可以通过在每条命令前加上adb shell来达到目的,也可以进入Shell后直接输入Monkey命令。基本语法如下:
$ adb shell monkey [options] 如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送500个伪随机事件:
$ adb shell monkey -p your.package.name -v 500 命令选项参考: 下表中列出了Monkey命令行可用的全部选项。
类别 选项 说明
常规
--help 列出简单的用法。
-v
命令行的每一个 -v 将增加反馈信息的级别。 Level 0( 缺省值 ) 除启动提示、测试完成和最终结果之外,提供较少信息。 Level 1 提供较为详细的测试信息,如逐个发送到 ActivITy 的事件。 Level 2 提供更加详细的设置信息,如测试中被选中的或未被选中的 Activity 。
事件
-s
伪随机数生成器的 seed 值。如果用相同的 seed
值再次运行 Monkey ,它将生成相同的事件序列。
--throttle
在事件之间插入固定延迟。通过这个选项可以减缓
Monkey 的执行速度。如果不指定该选项, Monkey 将不会被延迟,事件将尽可能快地被产成。
--pct-touch 调整触摸事件的百分比(触摸事件是一个down-up事件,它发生在屏幕上的某单一位置)。 --pct-motion 调整动作事件的百分比(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)。
--pct-trackball 调整轨迹事件的百分比(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)。
--pct-nav 调整“基本”导航事件的百分比(导航事件由来自方向输入设备的up/down/left/right组成)。
--pct-majornav 调整“主要”导航事件的百分比(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)
--pct-syskeys 调整“系统”按键事件的百分比(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键)。
--pct-appswitch 调整启动Activity的百分比。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法。
--pct-anyevent 调整其它类型事件的百分比。它包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等。
约束限制
-p 如果用此参数指定了一个或几个包,Monkey将只允许系统启动这些包里的Activity。如果你的应用程序还需要访问其它包里的Activity(如选择取一个联系人),那些包也需要在此同时指定。如果不指定
任何包,Monkey将允许系统启动全部包里的Activity。要指定多个包,需要使用多个 -p选项,每个-p选项只能用于一个包。 -c 如果用此参数指定了一个或几个类别,Monkey将只允许系统启动被这些类别中的某个类别列出的Activity。如果不指定任何类别,Monkey将选择下列类别中列出的Activity: Intent.CATEGORY_LAUNCHER或Intent.CATEGORY_MONKEY。要指定多个类别,需要使用多个-c选项,每个-c选 项只能用于一个类别。
调试 --dbg-no-events 设置此选项,Monkey将执行初始启动,进入到一个测试Activity,然后不会再进一步生成事件。为了得到最佳结果,把它与-v、一个或几个包约束、以及一个保持Monkey运行30秒或更长时间的非零值联合起来,从而提供一个环境,可以监视应用程序所调用的包之间的转换。
--hprof 设置此选项,将在Monkey事件序列之前和之后立即生成profiling报告。这将会在data/misc中生成大文件(~5Mb),所以要小心使用它。
--ignore-crashes 通常,当应用程序崩溃或发生任何失控异常时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成。
--ignore-timeouts 通常,当应用程序发生任何超时错误(如“Application Not Responding”对话框)时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发送事件,直到计数完成。
--ignore-security-exceptions 通常,当应用程序发生许可错误(如启动一个需要某些许可的Activity)时,Monkey将停止运行。如果设置了此选项,Monkey将继续向系统发送事件,直到计数完成。
monkey [-p ALLOWED_PACKAGE [-p ALLOWED_PACKAGE] ...] [-c MAIN_CATEGORY [-c MAIN_CATEGORY] ...] [--ignore-crashes] [--ignore-timeouts] [--ignore-security-exceptions] [--monitor-native-crashes] [--kill-process-after-error] [--hprof] [--pct-touch PERCENT] [--pct-motion PERCENT] [--pct-trackball PERCENT] [--pct-syskeys PERCENT] [--pct-nav PERCENT] [--pct-majornav PERCENT] [--pct-appswitch PERCENT] [--pct-flip PERCENT] [--pct-anyevent PERCENT] [--wait-dbg] [--dbg-no-events] [-f scriptfile] [--port port] [-s SEED] [-v [-v] ...] [--throttle MILLISEC] COUNT 讲了这么多,好像很枯燥,很难懂,即使看完了选项也不知道如何使用。
--kill-process-after-error 通常,当Monkey由于一个错误而停止时,出错的应用程序将继续处于运行状态。当设置了此选项时,将会通知系统停止发生错误的进程。注意,正常的(成功的)结束,并没有停止启动的进程,设备只是在结束事件之后,简单地保持在最后的状态。
--monitor-native-crashes 监视并报告Android系统中本地代码的崩溃事件。如果设置了--kill-process-after-error,系统将停止运行。 --wait-dbg 停止执行中的Monkey,直到有调试器和它相连接。