我一直在阅读有关使用仪器的UI自动化的文章,旧的文档表明这是使用javascript库访问最前端的应用程序,然后访问UI视图层次结构。
我看到iOS8设备在“开发人员”菜单中设置了“启用UI自动化”选项。我还看到,UIAutomation框架在iOS8中有一些文档,在我看来,它允许从代码中执行UIAutomation。
是否有从代码中使用iOS8 UIAutomation框架的示例,以了解这是否是适合我的框架?
在查找UIAutomation框架上的信息时,我看到了这个屏幕,我认为它使我感到困惑,以为它在Obj-c或Swift中是可用的,因为顶部有按钮。能否确认这个框架在或Obj-c中都是不可用的,并且仍然是一个javascript框架?
。

发布于 2014-09-20 18:59:45
我认为UIAutomation仍然是一个仅限于JavaScript的测试框架。如果支持任何其他语言,我们会在WWDC或发布说明中听到其他消息。
然而,这方面的具体证据是,在分析应用程序时使用的“自动化”工具没有语言下垂来表示另一种语言是可能的(例如,在Xcode中创建一个新类时,Swift和Objective有一个下拉列表)。
如果您使用自动化仪器内置的自动记录功能,您看到的代码是JavaScript。缺乏选择另一种语言的选项说明了这一点。仪器在Xcode 6中也做了轻微的视觉调整,而这个事实并没有改变。
遗憾的是,UIAutomation框架最近似乎没有得到太多的喜爱(自从2010年iOS4发布以来,没有什么变化,这使得一些人猜测正在进行重大的改造,否则就会被遗忘)。
为了了解JavaScript代码是什么样子的,它的目标是为iOS编写测试,请查看Alex的优化JS库:http://www.tuneupjs.org。他的库为苹果的UIAutomation JavaScript类提供了更高层次的抽象,尽管还在使用JavaScript。
他有一个链接在那里的示例项目,在苹果自己的UICatalog示例应用程序上运行测试。
与苹果提供的更原始的JavaScript类相比,使用像Tuneup这样的库是一个更好的方法,而后者实际上只是一个起点。
发布于 2014-10-16 19:42:03
你应该看看潜意识。这是一个建立在UIAutomation之上的测试框架,允许您在Objective或Swift中编写测试。
发布于 2015-04-01 21:02:27
我们让UIAutomation在iOS 8中使用照明器框架(我编写的),并在我们的CI中使用它。它是UIAutomation提供的Javascript的一组扩展。
目前,Javascript是苹果唯一支持的UIAutomation语言。
https://stackoverflow.com/questions/25728707
复制相似问题