概述
稳定性测试:通过在主流真机终端上,模拟真人对App的操作行为,支持自动登陆、运行时间可配置,有效点击覆盖更全更深,从而发现程序的Crash及ANR,一般使用monkey对应用程序进行稳定性测试。
monkey:Android SDK自带的命令行测试工具,向设备发送伪随机事件流,可以在模拟器里或实际设备中运行,它向系统发送伪随机的用户事件流,如按键输入、触摸屏输入、手势输入等,实现对正在开发的应用程序进行压力测试。
优势
- 脱离Case的依赖
- 可封装自动化执行
- 可封装后作为客户端性能测试的驱动
缺点
- 完全随机,不可控
-
不支持IOS系统
monkey测试步骤:
- Monkey程序由Android系统自带,使用Java语言写成,在Android文件系统中的存放路径是:/system/framework/monkey.jar;Monkey.jar程序是由一个名为“monkey”的Shell脚本来启动执行,shell脚本在Android文件系统中存放路径是:/system/bin/monkey;
- 通过在CMD窗口中执行: adb shell monkey{+命令参数}来进行Monkey测试;
- 基本的命令如下:
$ adb shell monkey [options] <event-count> //options $ adb shell monkey -p your.package.name -v 500 //举例:向指定包发送500个伪随机事件 $ adb shell monkey --ptc-touch //触摸事件百分比 $ adb shell monkey --ptc-motion //动作事件百分比 $ adb shell monkey --ptc-trackball //轨迹球事件百分比 $ adb shell monkey --ptc-nav //基本导航事件百分比 $ adb shell monkey --ptc-majornav //主导航事件百分比 $ adb shell monkey --ptc-syskeys //按键事件百分比 $ adb shell monkey --ptc-appswitch //启动时间百分比 $ adb shell monkey --ptc-anyevent //其他类型事件的百分比,包括keypress、不常用button以及其他未提及事件
monkey注入事件机制:
- Monkey注入系统事件是通过framework层的hidenApi获取系统服务;
- 触摸事件:包括屏幕以及物理键的触摸,滑动,点击事件,Monkey通过InputManager.getInstance().injectInputEvent(keyEvent, int);构造对应的事件,然后调用该接口执行事件;
- 调用Android系统组件的事件,Monkey通过IActivityManager实例来获取activity的系统服务,从而启动某个activity;
- window事件:指操作Window的事件,Monkey通过获取IWindowManager实例开启系统窗口服务,并执行窗口事件;
monkey的组织结构
- Monkey的核心类是Monkey.java,MonkeyEventSource.java,MonkeyEvent.java
最后
以上就是天真衬衫为你收集整理的安卓APP稳定性测试-----monkey的全部内容,希望文章能够帮你解决安卓APP稳定性测试-----monkey所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复