欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

如何使用IOS自动化测试工具UIAutomation

程序员文章站 2022-03-13 08:08:11
xcode中自带的instuments工具可以用来进行app的自动化测试, 以及用于进行内存泄露, 文件读写操作等的性能分析.第一部分: 熟悉instruments的uiautomation.首先,...

xcode中自带的instuments工具可以用来进行app的自动化测试, 以及用于进行内存泄露, 文件读写操作等的性能分析.

第一部分: 熟悉instruments的uiautomation.

首先, 选取xcode->open developer tool->instruments打开instruments工具, 然后在左上角可以选取设备及被测app(如下图):

如何使用IOS自动化测试工具UIAutomation

在这里, 我选取了iphone 5s的一个模拟器, 以及之前编写的一个简单的知乎日报app.

刚开始接触uiautomation的话, 建议选择录制脚本的方式来熟悉该工具的使用. 如下图的底部的三个按钮分别是播放, 录制, 停止.

如何使用IOS自动化测试工具UIAutomation

点击中间的红色按钮开始录制, 录制过程中, 代码框中会实时更新自动化脚本, 点击停止后, 就录制成功了一段自动化测试脚本了. 然后可以点击左边执行即可看到iphone 5s模拟器中的执行结果了, 跟录制的动作是一致的.

可以看出, 使用uiautomation对ios的app进行自动化测试, 使用的是javascript语言.

以上的target, app是建立特定的执行环境, 然后通过()获取app的uiwindow.

也可以通过var navbar = ()来获取app的导航栏navigationbar.

使用()可以建立app的层级结构树(类似于android自动化中的gethierarchyview()方法).  一个简单的结构如下:

如何使用IOS自动化测试工具UIAutomation

第二部分: 控件的获取及操作

获取ui控件的方法也非常简便:

其他控件的获取都是类似的方法, 如buttons(), images(), webviews().

对控件的操作如下:

导航栏navigationbar与tabbar的获取及操作如下:

打印调试log的方式如下:

第三部分: 自定义自动化脚本

熟悉了基本的uiautomation相关的规则之后, 我们就可以来编写自定义的自动化脚本了.

在这里, 我简单的取出tableview上的所有cell, 并依次点击该cell, 然后跳转至每个cell的详细界面, 最后返回.

log栏里, 会呈现所有的执行结果, 分析起来也是非常方便的.

如何使用IOS自动化测试工具UIAutomation

怎么样, 使用起来是不是蛮简单的. 但是, 在这里, 只是简单总结了instruments中uiautomation的基本用法, 真正精髓的东西还要自己去慢慢琢磨.

以上就是如何使用ios自动化测试工具uiautomation的详细内容,更多关于ios自动化测试工具uiautomation的资料请关注其它相关文章!