IOS 压力测试-UI AutoMonkey

UI AUtoMonkey是一款非常简单的IOS压力测试工具。通过它,你可以向ios设备发送滑动、拖动、旋转、甚至锁屏和解锁指令。原文github地址:https://github.com/jonathanpenn/ui-auto-monkey

如果你的mac电脑已经安装了xcode,那么环境就已经ok了,xcode中已经自带了UI Automation和Instruments。跟着下面的步骤进行操作就可以使用UIAutomonkey.js这个js脚本,进行monkey测试。

1、首先,用Xcode打开你的ios项目,or使用Xcode建立一个新项目,选好机型以后,从“Product”菜单中选择“Profile”(或者直接快捷键Command+i),这样就可以构建ios项目,并启动工具模板选择器。

以这个例子:《一个》为例(来自Github)

2、下一步,在选择器中选择“Automation”。当我们创建了自动化模板后,就可以测试app的性能了。

3、在Scripts面板中,点击“Editor Log”,在下拉列表中选择“Script”,点击设置,再点击“Add”按钮,在下拉列表中选择”Create”,就可以新建一个js脚本,将UIAutoMonkey.js这个文件的内容粘贴到新建的js脚本中,或者可以直接点击 imprt 将UIAutoMonkey.js import进去(推荐)。

 

 ,可以直接点击播放按钮,来。

UIAutoMonkey.js的地址https://github.com/jonathanpenn/ui-auto-monkey

4、点击播放按钮,执行这段脚本,monkey测试就开始了

5、获得的log:


UIAutoMonkey.js脚本,开头是下面的代码:

    config: {
        numberOfEvents: 1000,
        delayBetweenEvents: 0.05,    // In seconds

        //各事件的几率.
        // 数字越大,几率越大.
        eventWeights: {
            tap: 30,
            drag: 1,
            flick: 1,
            orientation: 1,
            clickVolumeUp: 1,
            clickVolumeDown: 1,
            lock: 1,
            pinchClose: 10,
            pinchOpen: 10,
            shake: 1
        },

        // Probability that touch events will have these different properties
        touchProbability: {
            multipleTaps: 0.05,
            multipleTouches: 0.05,
            longPress: 0.05
        }
        },

numberOfEvent的意思很明确,代表需要产生随机事件的个数。

delayBetweenEvents代表两个事件之间的延迟时间。这个值一般是需要调整的。如果该值为0,那么脚本会尽可能快的向设备发送事件。

eventWeights这个值代表每个事件的触发几率。如果tab事件的值为100、orientation事件的值为1,那么tab事件触发的几率就是orientation的100倍。

touchProbability控制着不同种类的tab事件。默认情况下,tab就是单击事件。调整这些参数可以设置双击、长按事件发生的频率。这些值要界于0、1之间。

原文地址:https://www.cnblogs.com/auvxx/p/5757947.html