赞
踩
因项目准备对外推广,应用的性能及稳定性成功重点关注对象。一方面针对 Bugly 收集到的 Crash 信息逐个分析;另一方面希望加强用户随机性 Crash 的分析,这就要使用 Monkey Test。
找到了三个 iOS Monkey Test 的工具:
UI AutoMonkey
CrashMonkey
CrashMonkey4IOS
CrashMonky 和 CrashMonkey4iOS使用在命令行启动的方式,需要使用目标设备的 DeviceID,之前在《Calabash 实战问题总结》一文中提到的方法查看。
最终我选择了CrashMonkey4IOS,主要考虑二个因素:一是日志系统完善,可以纪录行为轨迹;二是这个工具目前作者还在维护,其它两个GitHub 上已经很久没有更新了。
UI AutoMonkey是一个 JS 文件,封装了所有的操作。需要使用 instruments 来导入UIAutoMonkey.js,写 JS 脚本来调用。使用起来不方便。
CrashMonkey是在 UI AutoMonkey 的基础上做了封装,按 Git 上的简介就可以跑起来。文档说不支持真机,用真机尝试了下,也可以跑起来。
优点:
不足之处:
CrashMonkey4IOS 是在 CrashMonkey 的基础上做了优化,功能如下:
CrashMoney4iOS的日志,放在命令执行的目录,会生成一个smart_monkey_result 的目录。建议在执行命令前,先 cd 到一个专门的目录,不然每次生成的日志都放到用户当前目录了。
安装 CrashMonkey4iOS 的依赖imagemagick时会出现一些问题,安装失败的问题,可以使用如下方式解决:
curl -O ftp://ftp.imagemagick.org/pub/ImageMagick/ImageMagick.tar.gz
tar -zxf ImageMagick.tar.gz
cd ImageMagick-*/
./configure --prefix=/usr/local
make
sudo make install
另外如果是真机,执行的时候可能会遇到类似如下错误:
WebKit Threading Violation / UIAScriptAgentSignaledException running in real device
这时,请打开设置->开发者->Enable UI Automation
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。