Xcode测试之iOS自动化测试

作者: 甜行僧 | 来源:发表于2016-07-05 17:44 被阅读641次

    最近接触iOS测试,由于以前做过专门的pc端的功能以及性能测试,故而在学习iOS app测试的时候还是有很多旧知识积累,好了废话少说。


    或许此刻你以为会进入正题,那就错了,以下还是废话。=.=
    前沿:做之前可行性分析,或者说对市场上各种流行的iOS app 测试方式进行评估。以前的朋友告诉HP的MC(Mobile Center)不错,但是调查下来:
    优点:非常专业的测试软件,与HP的ALM,UFT,LR等集成很好,故而适合已经使用这些软件的公司
    缺点:在没有使用或者单单只打算用于测试App来说的用户未免投入成本过大,而且不易快速上手
    PS:另外还有朋友推荐austere(Automated User interface Software Test)

    在经历了各种噼里啪啦的网络云游后,还是直接进入正题吧(不然会被打)😄


    自动化UI测试的方案优缺点

    iOS9 UI Tests探索笔记
    行为驱动测试

    • 引入第三方框架

    github
    安装详见


    此次主要使用Instrument自带的automation
    (instrument是Xcode中的,故而不要再问怎么安装了)
    step:
    1.有自己的待测试iOS程序
    2.直接Command+i 进入instrument界面
    3.选择“Automation”,进入测试界面 ,如下

    Snip20160705_1.jpg

    编码区域上方的Script按钮点击展开还会有另外两个选项:Trace LogEditor Log,分别用来打印对应的记录。

    Snip20160705_4.png

    左上角的红色圈按钮,点击会运行程序。
    图下方的三个按钮,第一个三角形图标的按钮,可以在程序已经跑起来的时候,实时更改脚本并运行;第二个红色圆形按钮用来录制操作,能将对App的每一次操作生成对应的脚本语句,下次直接跑脚本就能将之前的操作自动重复一次了。
    右边还有按钮能导入导出脚本,给脚本文件改名,暂停继续脚本的运行等。


    自动化测试之录制方式step:

    • 上面的123都做完了
    • 点击下方的录制按钮,这时候程序运行起来,在simulator上进行一系列操作(such as: tap)
      在点击的过程中会发现,每次点击操作在脚本编辑区域都会生成一行代码(对应于你每次点击的步骤,不信你就一边tap一边看)
    • 录制完成之后点击旁边的正方形图标按钮。之后可以点击左上角红色圆形按钮,这时候程序运行起来,会自动运行刚刚录制所生成的脚本代码,这时候能看到刚刚点击了一系列操作又自己跑了一遍。
      到这里你就可以试着自己点击玩起来吧~
      (动作--脚本--动作)

    自动化测试之编辑脚本方式step:

    • 1 是不是觉得上边录制的方式很简单,那就呵呵哒了
    • 2 根据自己的整个对于simulator的操作编写成js脚本,别崩溃,耐心点。这里的js脚本就是上边的录制过程中产生的对应的动作脚本。
      (脚本--动作)
      若想控制脚本点击事件的间隔,可以再每次点击之后加上targetdelay()方法,参数为秒,延迟一定的时间后再继续运行脚本。
      延迟2秒再继续
    target.delay(2);
    

    可以输出log内容

    UIALogger.logMessage(msg);
    

    以上两种方式均可完成一次自动化测试过程,第一种简单粗暴,第二种灵活协调。真正测试过程中建议方式是两者结合,we can 录制完后对代码进行修改,比如加一些延迟啊等动作。最后只要能跑起来不卡住就成功啦。

    以上. 分享。

    相关文章

      网友评论

      • turning_blue:目前在用xcode 8.2 ,Instrument里面没有automation呢 :flushed: ?
        甜行僧:Xcode8移除了aautomation 详情参考下http://www.cocoachina.com/ios/20161110/18034.html
      • 灰6太9狼:简单,清晰

      本文标题:Xcode测试之iOS自动化测试

      本文链接:https://www.haomeiwen.com/subject/cdihjttx.html