Monkey测试环境搭建
一.JAVA环境的搭建
二.Android SDK工具安装
参考文件链接:http://blog.sina.com.cn/s/blog_15624444e0102wt6f.html
执行help查看帮助:adb shell monkey -help
-v用户指定反馈信息相信程度
1)日记级别level0
Adb shell monkey –p com.example.android.notepad –v 100
说明缺省值,仅仅提供启动提示,测试完成等少量信息
Adb shell moneky –p com.example.android.notepad –v –v 100
说明较为详细,包括每个发送的activity的事件
Adb shell moneky –p com.example.android.notepad –v –v –v 100
说明最详细,包括选中/未选中的activity的事件信息
事件选项:
-s:指定产生随机事件种子值,相同的种子值产生相同的事件序列(如: -s 200)
--throttle:每个事件结束后的间隔时间——降低系统的压力(如不指定,系统会尽快
的发送事件序列)。如:--throttle 100
--pct-touch:指定触摸事件的百分比,如:--pct-touch 5% , 相关的还有以下option:
--pct-motion (滑动事件)
--pct-trackball (轨迹球事件)
--pct-nav (导航事件 up/down/left/right)
--pct-majornav (主要导航事件 back key 、 menu key)
--pct-syskeys (系统按键事件 Home 、Back 、startCall 、 endCall 、
volumeControl)、
--pct-appswitch (activity之间的切换)、
--pct-anyevent (任意事件)
调试选项:
--dbg-no-events:初始化启动的activity,但是不产生任何事件。
--hprof:指定该项后在事件序列发送前后会立即生成分析报告 —— 一般建议指定该项。
--ignore-crashes:忽略崩溃
--ignore-timeouts:忽略超时
--ignore-security-exceptions:忽略安全异常
--kill-process-after-error:发生错误后直接杀掉进程
--monitor-native-crashes:跟踪本地方法的崩溃问题
--wait-dbg:知道连接了调试器才执行monkey测试。
monkey测试的原理就是利用socket通讯的方式来模拟用户的按键输入,触摸屏输入,手势输入等,看
设备多长时间会出异常。当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸
,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去
负荷测试你开发的软件。
主要实现对正在开发的应用程序进行压力测试。
使用Monkey流程:
1.ADB连接Android测试设备
2.确定你要测试的应用的PackageName
3.使用Monkey发一条测试命令
步骤详解:
1.ADB连接Android测试设备
使用USB把Android设备接到PC上,然后装上驱动(PC会自动安装,Android设备的USB调试必须打开,
设备在开发者模式)
2.确定你要测试的应用的PackageName
如果你的andriod设备没有root的话,你可以这样做:
①在android设备上点击一下你要测试的设备,然后就不用操作设备了。
②在PC上的命令行输入:adb logcat>D:/log.txt(可以先输入,操作第一步后按回车运行)
在这里的D:/log.txt你可以改成其他的路径,但是一定要先确保路径下没有这个文件,不然的话你以
前的文件就被改掉了,一定要小心。
③按下Ctrl+c先停掉(为了避免过多的新信息)。打开刚刚的那个文件D:/log.txt。从文件最下面开
始找下面格式的信息
I/ActivityManager( 数字): Displayed 包名/类名: +数字ms
例如我的信息如下:
I/ActivityManager( 871): Displayed com.fuopen.app/io.dcloud.PandoraEntryActivity: +221ms
(total +445ms)
在log.txt中你可以查找Ctrl+F,输入I/ActivityManager进行搜。如果你严格按照刚刚的步骤做的话,
那么很可能是最下面那条信息,即使不是那么也肯定是最下面几条信息中的某一条,这需要你根据应
用进行辨别。
④记下你刚刚得到的包名,例子中的包名为“com.fuopen.app”。马上就会用。
3、使用Monkey发一条测试命令。
这一步就比较简单了。直接在pc上的命令行输入:adb shell monkey -p com.fuopen.app -v 50
备注:上面命令中的com.fuopen.app就是之前获得的包名;命令中的参数你可以自己根据需要参考上
面的参数文档进行修改。测试命令也可以在网上找到。
4、观察android设备,直到Monkey停止。
5、如果应用崩溃的话就好分析一下Monkey中的信息。
总结
Monkey的使用确实比较简单,但是在测试中确有不小的作用,值得使用。
参考文件链接:http://www.7edown.com/edu/article/soft_4706_1.html