iOS应用程序的UI自动化工具,可识别CALayer对象

iOS应用程序的UI自动化工具,可识别CALayer对象,ios,object,user-interface,calayer,ios-ui-automation,Ios,Object,User Interface,Calayer,Ios Ui Automation,我正在尝试自动化测试,以测试具有CA层对象的应用程序。Apple提供的UI自动化框架没有识别CA层对象。我想要一个有助于识别CA层对象的ui自动化工具列表。我可以获取工具列表吗?UI Automation无法访问CA层对象,因为它们未暴露于iOS中的可访问性机制。通过从符合协议的对象开始,可以将层公开给可访问性API。该对象将提供一组对象,这些对象将镜像CA层的表示。此时,UI自动化将能够“看到”用户在查看原始CA层时看到的内容 这种策略有两个好处。您的应用程序现在可以通过视觉障碍者的画外音等方

我正在尝试自动化测试,以测试具有CA层对象的应用程序。Apple提供的UI自动化框架没有识别CA层对象。我想要一个有助于识别CA层对象的ui自动化工具列表。我可以获取工具列表吗?

UI Automation无法访问CA层对象,因为它们未暴露于iOS中的可访问性机制。通过从符合协议的对象开始,可以将层公开给可访问性API。该对象将提供一组对象,这些对象将镜像CA层的表示。此时,UI自动化将能够“看到”用户在查看原始CA层时看到的内容

这种策略有两个好处。您的应用程序现在可以通过视觉障碍者的画外音等方式访问,并且您可以通过UI自动化与应用程序对话


这是苹果为那些不使用本机
UIKit
功能的应用程序所推荐的。IMHO,我认为沿着这条路走是一个好主意,因为苹果公司在无障碍功能上下了很大的赌注,而且随着将来集成到操作系统中,它只会走得更深。

谢谢你的回复。现在我的应用程序的代码是C。我正在使用MonoTouch编写我的应用程序。有没有办法从C#使用UIAccessibilityContainer和UIaccessibilityElement。我尝试从MonoTouch获取对UIAccessibilityContainer的引用,但无法获取。请帮我解决这个问题。唉,我对MonoTouch一无所知。我还没有用过那种机制。我必须退出,让其他人说出来。这里有一些使用CALayer实现UIAccessibilityContainer的示例代码: