【问题标题】:UIAutomation Testing module in Instruments XcodeInstruments Xcode 中的 UIAutomation 测试模块
【发布时间】:2016-03-07 22:39:34
【问题描述】:

在 Xcode 中使用 Instruments 中的 UIAutomation 模块可以完成哪些类型的测试?

测试是用 javascript 编写的。可以进行的一项测试是检查文本字段是否具有特定的字符串或为空。

这种类型的测试也可以通过objective-c完成,那为什么要使用UIAutomation。

【问题讨论】:

    标签: javascript objective-c xcode automated-tests instruments


    【解决方案1】:

    您是正确的,可以通过objective-c(通过“UI测试”)完成测试类型,但这是Xcode 7的新功能。在Xcode 7之前,编写测试以通过仪器自动化UI是以 Apple 支持的方式与设备交互的唯一方式,并提供命令行支持。

    现在 Xcode 7 推出了 UI 测试,instruments 的 UIAutomation 已被弃用。如果你正在编写新的测试,你应该避免 UIAutomation 如果你能提供帮助。 从 Xcode 8 开始,UIAutomation 实际上已被移除,因此绝对不要使用它。

    弃用

    •已弃用 Instruments 中现有的 UIAutomation 支持。在 Xcode 7 中使用 UI 测试。(22345571)

    https://developer.apple.com/library/ios/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc7_release_notes.html#//apple_ref/doc/uid/TP40001051-CH5-DontLinkElementID_178

    --

    总而言之,与新的 UI 测试相比,仪器和 UIAutomation 仍有一些优势(至少目前如此)。现在,您需要更少的东西来针对连接的设备运行仪器测试。您只需要 Xcode、为开发设置的受信任设备、设备上的应用程序以及要针对该应用程序运行的脚本。将应用程序安装到设备上有点困难,因为 Apple 没有提供以自动化方式实现此目的的好方法,但是已经构建了许多第三方框架来解决这个问题。

    另一方面,UI 测试需要 Xcode,一个为开发而设置的可信设备,一个与您的应用程序和 UI 测试目标一起设置的项目,然后您需要使用 xcodebuild 来运行它。根据您要运行的自动化类型,必须确保您的机器已设置好来构建您的项目可能会很麻烦或很昂贵。

    【讨论】:

      猜你喜欢
      • 2012-03-31
      • 1970-01-01
      • 1970-01-01
      • 2012-01-05
      • 1970-01-01
      • 2016-08-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多