monkey基本命令

合集下载

MonkeyTest

MonkeyTest

Monkey Test1.环境搭建1.1 软硬件环境开发机:X86 PC Linux (推荐ubuntu10.04及以上)测试机:P1015 Gingerbread1.2建立连接通过network连接:Step1:将P1015接上网线。

Step2:进入Android Debug模式,修改init.rc文件修改eths service,在init.rc末尾。

如下service start_eths /system/bin/ifconfig eth0 10.66.3.222oneshotdisabled10.66.3.222:IP地址根据各自的网络环境设定Android Debug模式:我们Port的Gingerbread,启动的时候可以进入debug模式Step3:exit 退出debug,启动androidStep4:进入android命令行模式alt + F1, 查看network信息netcfg,确保网络被开启eth0 UP 10.66.3.222 255.0.0.0 0x00001043Step5:如果网络未被开启,请执行netcfg eth0 up然后repeat第四步,确保android能连上网Step6:在ubuntu在输入export ADBHOST = 10.66.3.222Step7:在ubuntu在输入adb devices查看连接状态List of devices attachedemulator-5554 device当然也有其他连接方式,可以参看网络资源。

采用两台device,测试端和被测端的目的是:1)可以同时查看UI变化和Log的输出2)防止android 死掉,从而丢失所有的测试信息2. 命令使用Monkey是一个命令行工具,可以运行在仿真器里或实际设备中。

它向系统发送伪随机的使用者事件流,实现对正在开发的应用程序进行压力测试。

Monkey包括许多选项,它们大致分为四大类:基本配置选项,如设置测试的事件数量。

Monkey测试方法总结

Monkey测试方法总结

monkey测试方法总结测试策略:全模块、单模块测试步骤:1、测试前准备:1.PC侧安装adb驱动,使用adb shell命令不报错2.手机设置:锁屏方式设置为无,屏幕亮度建议设成最低(防止电量消耗过大导致关机)3.手机为刚刷的新版本或者进行一次恢复出厂设置备注:或测试前请先删除自行安装的第三方:手机助手、测试工具apk等等4.休眠设成最长时间或不休眠5.设置-开发者选项中勾选不锁定屏幕6.设置手机时间为当前正确时间7.若要测试上网请连接可用wifi或打开数据业务8.测试前需开启aplog*#*#201206#*#*备注:测试前请确保日志功能开启,测试完成后先保存日志adb rootadb remountadb shell rm -rf /data/logs/*作用就是删除以前的旧log工具使用前请确定手机版本为debug版本,PC 的adb命令使用正常附件解压到任意目录,双击InstalllogClient.bat会自动安装logClient客户端并重启手机配置:1. 连接热点360WiFi-6CDC31,连接密码为xdjatest2. 输入密码后勾选下面的高级选项-》将DHCP选项改为静态-》设置IP地址为11.12.112.196至199之间的IP,设置完IP直接点击连接,连接上热点后即配置完毕2、测试执行:先执行命令adb shell再输入如下的命令:全模块:monkey--throttle500--ignore-crashes--ignore-timeouts--ignore-security-exc eptions--ignore-native-crashes--monitor-native-crashes-v-v-v180000>/st orage/sdcard0/monkey_log.txt&单模块:monkey-p.xdja.ncser--throttle500--ignore-crashes--ignore-timeouts--ign ore-security-exceptions--ignore-native-crashes--monitor-native-crashes-v-v-v180000>/storage/sdcard0/monkey_log.txt&备注:1、单模块命令加:-p模块包名;2、测试9小时使用180000,测试18小时使用3750003、测试开始后将手机从PC上拔出并连接充电器继续进行测试,测试完成后手机会自动停止操作4、事件数量180000基本9小时,跑时间太久日志会被冲掉,因此建议每天跑2次3、日志导出:分别将手机中的aplog、monkey运行日志、trace导出到PC侧1、Aplog:可以使用MTP方式直接将手机侧logs文件夹拷贝到PC侧2、Monkey运行日志:adb pull/storage/sdcard0/monkey_log.txt e:\monkey_log.txt备注:前面的路径为手机侧存储monkey运行日志的路径和文件名,后者为PC 侧的存储路径3、anr获取trace:adb pull/data/anr目标目录;比如:adb pull /data/anr d:/,就会在d盘;备注:当ANR发生的时候,系统会将ANR信息写入到手机的data/anr/这个文件夹,若报anr问题,请使用adb pull命令将这个文件夹导出4、BUG提交:描述:【主题】:Monkey测试音乐模块出现1次crash【预制条件】:1.测试机电量充足2.测试前恢复出厂设置【操作步骤】:Monkey测试命令adb shellmonkey --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 180000 > /storage/sdcard0/monkey_log.txt &【实际结果】:Aplog目录例如:All2015-09-21-18-53-18-0600\logs\crashlog1\system_app_crash56.txtAplog实际报错信息例如:ng.IllegalStateException: Can not perform this action after onSaveInstanceStateat android.support.v4.app.y.c(Unknown Source)at android.support.v4.app.y.enqueueAction(Unknown Source)at mitInternal(Unknown Source)at mit(Unknown Source)at .cyanogenmod.eleven.ui.activities.i.run(Unknown Source)at android.os.Handler.handleCallback(Handler.java:739)at android.os.Handler.dispatchMessage(Handler.java:95)at android.os.Looper.loop(Looper.java:135)at android.app.ActivityThread.main(ActivityThread.java:5221)at ng.reflect.Method.invoke(Native Method)at ng.reflect.Method.invoke(Method.java:372)at .android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:898)at .android.internal.os.ZygoteInit.main(ZygoteInit.java:693)at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:116)【期望结果】:测试无问题【出现概率】:1【对比机现象】:无【LOG地址】:\\11.12.111.153\public\\软件测试\测试LOG\ROM快速定制LOG\ ROMDZ-1673【备注】:R19【联系人】:侯璐Log:aplog、monkey运行日志、trace提交至服务器:\\11.12.111.153\public\\软件测试\测试LOG\ROM快速定制LOG\备注:aplog需附上全部的log日志,方便研发分析其他:1、查看当前在运行的包名:手机连接PC端,打开模块,运行命令如下:adb shell dumpsys window |findstr mFocusedWindowu0和/之间的部分为包名2、参数说明命令:monkey-p.android.contacts--throttle500--ignore-crashes--ignore-timeouts--ignore-s ecurity-exceptions--ignore-native-crashes--monitor-native-crashes-v-v-v180000>/s torage/sdcard0/monkey_log.txt&参数:--throttle:每个事件结束后的间隔时间(单位毫秒)(如不指定,系统会尽快的发送事件序列)。

monkey参数

monkey参数

monkey参数Monkey参数是一种用于Android应用程序测试的工具,它可以模拟用户在应用程序中的各种操作,如点击、滑动、输入等。

通过使用Monkey参数,测试人员可以快速地发现应用程序中的潜在问题,从而提高应用程序的质量和稳定性。

Monkey参数的使用非常简单,只需要在命令行中输入相应的参数即可。

以下是一些常用的Monkey参数:1. -p:指定要测试的应用程序的包名。

2. -v:输出详细的日志信息。

3. --throttle:指定事件之间的延迟时间,单位为毫秒。

4. --pct-touch:指定触摸事件的百分比。

5. --pct-motion:指定运动事件的百分比。

6. --pct-trackball:指定轨迹球事件的百分比。

7. --pct-nav:指定导航事件的百分比。

8. --pct-majornav:指定主要导航事件的百分比。

9. --pct-syskeys:指定系统按键事件的百分比。

10. --pct-appswitch:指定应用程序切换事件的百分比。

11. --pct-anyevent:指定任何事件的百分比。

12. --ignore-crashes:忽略应用程序崩溃。

13. --ignore-timeouts:忽略超时错误。

14. --ignore-security-exceptions:忽略安全异常。

15. --monitor-native-crashes:监视本地崩溃。

通过使用这些Monkey参数,测试人员可以对应用程序进行全面的测试,发现潜在的问题,并及时修复它们。

同时,Monkey参数还可以帮助测试人员提高测试效率,减少测试时间和成本。

总之,Monkey参数是一种非常有用的Android应用程序测试工具,它可以帮助测试人员快速地发现应用程序中的问题,并提高应用程序的质量和稳定性。

如果你是一名Android应用程序测试人员,那么一定要掌握Monkey参数的使用方法,以便更好地完成测试工作。

Monkey白名单和黑名单之分

Monkey白名单和黑名单之分

Monkey白名单和黑名单之分com.autonavi.amapautocom.qiyi.video.padcn.kuwo.kwmusiccar一、如果我们要测试以上3个APK的monkey随机操作。

那么我们有2个办法1、使用-p的操作举例:monkey-p com.autonavi.amapauto-p com.qiyi.video.pad-p cn.kuwo.kwmusiccar --ignore-crashes--ignore-timeoutss--throttle100864000这样,就可以只测试这3个应用的monkey随机操作。

2、使用白名单操作说明:--pkg-blacklist-file后面跟的是文件的路径。

操作:③④⑤⑥①、我们先在电脑桌面新建一个C:\whitelist.txt文件,然后再打开文件,把上面的3个包名添加。

按列添加。

不要弄成一行。

②、把白名单push到设备中adb push C:\Users\admin\Desktop\whitelist.txt/data/local/tmp/③、执行白名单monkey--pkg-whitelist-file/data/local/tmp/whitelist.txt--ignore-crashes--ignore-timeoutss --throttle100864000这个命令的意思就是只跑白名单里面的应用,延迟100毫秒执行86400次。

二、如果要执行的APK包名实在太多,那我们就设置黑名单来操作黑名单的执行方法和白名单有点类似。

但是黑名单的意思,就是就执行除了这些黑名单之外的所有的APK包名。

黑名单:说明:--pkg-blacklist-file后面跟的是文件的路径操作:①、我们先在电脑桌面新建一个C:\blacklist.txt文件,然后再打开文件,把不需要执行的APK包名添加到文件中。

按列添加。

不要弄成一行。

②、把黑名单push到设备中adb push C:\Users\admin\Desktop\blacklist.txt/data/local/tmp/③、执行黑名单monkey--pkg-blacklist-file/data/local/tmp/blacklist.txt--ignore-crashes--ignore-timeoutss --throttle100864000这个命令的意思:只跑除blacklist.txt中之外的所有应用。

Monkey测试详解

Monkey测试详解

Monkey测试详解概念:monkey test,也有⼈叫做搞怪测试,⼀般指⽤毫⽆规律的指令或操作去测试被测系统,观察被测系统的稳定性和容错性。

这种测试⽅式在产品周期中的早期阶段会找到很多很好的bug,为⽤户节省不少的时间。

介绍:Monkey是Android系统⾃带⼀个命令⾏⼯具,可以运⾏在模拟器⾥或者真实设备中运⾏。

monkey向系统发送伪随机的⽤户事件流,实现对正在开发的应⽤程序进⾏压⼒测试。

monkey包括很多选项,⼤致四⼤类:1.基本配置选项,如设置尝试的事件数量。

2.运⾏约束选项,如设置只对单独的⼀个包进⾏测试。

3.事件类型和频率。

4.调试选项Monkey 命令启动⽅式:a. 可以通过PC机CMD窗⼝中执⾏: adb shell monkey {+命令参数}来进⾏Monkey测试b. 在PC上adb shell 进⼊Android系统,通过执⾏monkey {+命令参数} 来进⾏Monkey 测试c. 在Android机或者模拟器上直接执⾏monkey 命令,可以在Android机上安装Android终端模拟器monkey命令特性:不可能使⽤monkey来指定做⼀样测试,重复做很多次。

因为monkey产⽣的是伪随机的事件流。

但是我们可以通过添加命令选项将操作限制在⼀定的范围内。

⼀、⾸先你要先搭建环境1.先下载jdk具体安装流程请参考:JDK教程2.再下载sdk 具体安装流程请参考:SDK教程⼆、在开发者选项⾥打开⼿机的usb调试,⽤usb数据线连接⼿机,允许电脑连接⼿机。

三、monkey前的准备命令1.windows+R 输⼊cmd进⼊dos命令⾏;2.输⼊adb devices 下⾯出现类似下图的组合你就成功了;3.输⼊ adb shell pm list packages查看⼿机所有的包名,输⼊ adb shell pm list packages -3 查看⼿机上所有的第三⽅包名。

adb命令logcat日志抓取与monkey

adb命令logcat日志抓取与monkey

adb命令logcat⽇志抓取与monkey ⼀.logcat抓log⽅法:adb logcat命令,可以加条件过滤1.安装SDK(参考android sdk环境安装)2.使⽤数据线链接⼿机,在⼿机助⼿的sdcard中建⽴⼀个1.log的⽂件或在抓⽇志时直接导出到电脑位置3.程序运⾏cmd,进⼊到含有adb.exe⽬录4.输⼊adb devices 查看设备是否连上5.输⼊抓取命令:存放到⼿机adb logcat -s *:E > /mmt/sdcard/1.log存放到PCadb logcat -s '*:E' > d:/1.log6.使⽤⼿机打开app操作崩溃⼀次(如果想中途停⽌按下ctrl+c)7.查看⽇志抓取⽂件,分不清楚是那个时间段所造成的后果8.加⼊命令:-v time 就会显⽰出时间9.输⼊命令adb logcat -v time -s *:E > /mmt/sdcard/1.log(eg:adb logcat -v time -s appname:E>d:/1.log)过滤⽇志级别优先级是下⾯的字符,顺序是从低到⾼:V — 明细 verbose(最低优先级)D — 调试 debugI — 信息 infoW — 警告 warnE — 错误 errorF — 严重错误 fatalS — ⽆记载 silent⽤法:使⽤命令, 显⽰10条 Error 以上级别的⽇志:adb logcat 10 *:E使⽤命令, 显⽰全部Erroradb logcat *:E输出指定App⽇志adb logcat <your package name>:<log level> *:Sadb logcat -v time -s app包名:E>d:/1.loglog过滤器使⽤( adb logcat tag:priprity)过滤器表达式的格式是tag:priority ... ,其中tag是标记(可以是具体的,*表⽰所有), priority是最⼩的优先级,可以是组合adblogcat ActivityManager:I MyApp:D *:Sadblogcat * :W -----所有优先级⼤于等于“warning”的⽇志adblogcat * :E -----所有优先级⼤于等于“error”的⽇志四、log输出-log控制⽇志格式 adb logcat -v 格式brief — 显⽰优先级/标记和原始进程的PID (默认格式)process — 仅显⽰进程PIDtag — 仅显⽰优先级/标记thread — 仅显⽰进程:线程和优先级/标记raw — 显⽰原始的⽇志信息,没有其他的元数据字段time — 显⽰⽇期,调⽤时间,优先级/标记,PIDlong —显⽰所有的元数据字段并且⽤空⾏分隔消息内容eg:adb logcat -v thread五.log输出-附加缓冲区:adb logcat -bradio — 查看包含在⽆线/电话相关的缓冲区消息events — 查看事件相关的消息main — 查看主缓冲区 (默认缓冲区)adb logcat -b radio什么也不加代表默认缓冲六.log输出-log选项列表-b 指定要查看的⽇志缓冲区,可以是system,events ,radio,main . 默认值是system和main 。

Monkey测试

Monkey测试

Monkey测试⼀、Monkey是什么?Monkey是Android中的⼀个命令⾏⼯具,可以运⾏在模拟器或者实际设备中向系统发送伪随机的⽤户事件流(按键输⼊、触摸屏输⼊、⼿势输⼊等)实现对正在开发的应⽤程序进⾏测试Monkey测试之⼀种为了测试软件的稳定性、健壮性的快速有效的⽅式⼆、Monkey⽤来做什么的?Monkey 主要⽤于Android的稳定性测试,⾃动的⼀个压⼒测试⼩⼯具,主要⽬的就是为了测试app 是否会Crash(崩溃).三、Monkey的特征1.测试对象仅为应⽤程序包,有⼀定的局限性(不能对源码进⾏测试)2.Monkey测试使⽤的事件流数据是随机的,不能进⾏⾃定义3.可以对MonkeyTest对象,事件数量,类型、频率等进⾏设置四、Monkey程序介绍(1) Monkey程序由Android系统⾃带,使⽤Java语⾔写成,在Android⽂件系统中的存放路径是: /system/framework/monkey.jar;(2) Monkey.jar程序是由⼀个名为“monkey”的Shell脚本来启动执⾏,shell脚本在Android⽂件系统中的存放路径是:/system/bin/monkey;(3)Monkey 命令启动⽅式:a)可以通过PC机CMD窗⼝中执⾏: adb shell monkey {+命令参数}来进⾏Monkey测试b)在PC上adb shell 进⼊Android系统,通过执⾏ monkey {+命令参数} 来进⾏Monkey 测试c)在Android机或者模拟器上直接执⾏monkey 命令,可以在Android机上安装Android终端模拟器五、Monkey测试的⽬的1.ANR问题:在⽇志中搜索“ANR”2.崩溃的问题:在⽇志中搜索“Exception”3.ANR:Application Not Responding,在Android中,如果应该程序有⼀段时间响应不够灵敏,系统会向⽤户显⽰⼀个对话框,这个对话框称作应⽤程序⽆响应对话框。

monkey测试标准

monkey测试标准

Monkey测试是一种通过向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等)来对应用程序客户端进行稳定性测试的方法。

其标准如下:
1.测试目的:验证APP的稳定性以及是否会在各种异常场景下出现未知的错误和异常。

2.测试方法:使用Google原生的Monkey测试框架,执行指定参数的测试,并记录运行日志和报
错日志。

3.测试指令:通过adb shell命令执行Monkey测试,并可以指定一系列参数进行更精细的测试。

例如:adb shell monkey -p 包名--pct-touch 16 --pct-motion 16 --pct-trackball 16 --pct-majornav 16 --pct-appswitch 16 --pct-nav 16 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --kill-process-after-error -v -v -v --throttle 500 9999999 -s 123456。

4.判定标准:关注各种指标,如ANR、CRASH、OOM、Error、Exception、GC等,并根据实
际需求制定相应的通过标准。

此外,Monkey测试的标准可能因应用场景、设备类型和特定需求而有所不同,因此在实际应用中可能需要根据具体情况进行微调。

建议参考行业内的最佳实践或专业机构的指南来完善标准,以提供更加准确和可靠的结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

monkey基本命令
Monkey是一种测试工具,被广泛用于自动化测试领域。

它可以模拟用户的操作,例如点击、滑动、输入等,以测试移动应用程序的稳定性和性能。

本文将介绍Monkey的基本命令及其使用方法,帮助读者了解如何使用Monkey进行自动化测试。

Monkey是Android平台上的一种命令行工具,可以通过ADB (Android Debug Bridge)连接到设备或模拟器,并模拟用户操作。

Monkey的基本命令是"adb shell monkey",其后可以跟上一系列参数来指定测试的次数、包名、事件百分比等。

下面将详细介绍一些常用的Monkey命令。

1. 基本命令
- "adb shell monkey -p -v 500":这条命令表示以包名为""的应用为测试对象,执行500个事件。

- "adb shell monkey -p -v -v -v 500":通过增加"-v"参数的数量,可以增加输出的详细程度。

2. 事件百分比
Monkey的事件百分比参数可以用来指定不同类型事件的触发概率。

例如,"-pct-touch"表示触摸事件的百分比,"-pct-motion"表示滑动事件的百分比,"-pct-trackball"表示轨迹球事件的百分比,"-pct-nav"表示导航事件的百分比,"-pct-majornav"表示重要导航事件的百分比,"-pct-syskeys"表示系统按键事件的百分比,"-pct-
appswitch"表示应用切换事件的百分比,"-pct-anyevent"表示任意事件的百分比。

3. 包名过滤
如果只想对某个特定的应用进行测试,可以使用"-p "参数来指定应用的包名。

这样Monkey就只会对指定的应用进行操作,而不会触发其他应用的事件。

4. 事件数量
"-v 500"表示执行500个事件。

可以根据需要调整事件的数量,以达到测试的目的。

5. 日志输出
Monkey会将执行过程中的日志输出到控制台或日志文件中。

可以使用"-v -v -v"参数来增加输出的详细程度,并使用"> log.txt"将日志输出到文件中。

Monkey作为一种自动化测试工具,可以帮助开发人员发现应用在各种情况下的稳定性问题。

通过模拟用户的操作,可以快速地触发各种事件,包括正常操作和异常操作。

通过观察应用的行为和日志输出,开发人员可以及时发现并修复潜在的问题,提高应用的质量和性能。

然而,Monkey也有一些限制和注意事项。

首先,Monkey是一种随机事件测试工具,无法模拟特定的用户场景和行为。

其次,Monkey
只能模拟应用层的操作,无法测试底层的硬件和系统组件。

最后,Monkey的测试结果可能受到设备性能和配置的影响,不同设备上的测试结果可能存在差异。

Monkey是一种功能强大的自动化测试工具,可以帮助开发人员快速发现应用的稳定性和性能问题。

通过熟练掌握Monkey的基本命令和使用方法,开发人员可以更高效地进行自动化测试,提高应用的质量和用户体验。

希望本文对读者理解和使用Monkey有所帮助,欢迎大家探索更多关于Monkey的应用场景和技巧。

相关文档
最新文档