如何使用Instruments UIAutomation测试iOS Web应用程序

时间:2012-11-06 07:45:04

标签: ios web-applications ios-ui-automation xcode-instruments

当我测试本机应用程序时,我可以选择目标(来自选择目标列表中列出的真实设备的应用程序;或者在模拟器的情况下 - 选择应用程序项目中的“配置文件”菜单项)。

但是如何为网络应用选择目标?

在这种情况下,我是否必须选择一些浏览器作为目标?设备具有Safari和Chrome浏览器。 Chrome浏览器会显示在目标列表中。但是当我尝试运行脚本时,它不起作用。 Chrome刚刚启动,但会执行任何操作。

我还尝试创建只在浏览器中打开网页的XCode项目。但是,当我尝试运行脚本错误“目标应用程序不是最前面”时出现。 是否有可能选择设备上安装的应用程序作为目标,如果它们不在仪器选择目标列表中?设备主页上有一个指向Web应用程序的链接。我能以某种方式选择它作为目标吗?在Organizer中(从XCode调用),只显示一个 - 本机 - 应用程序。

2 个答案:

答案 0 :(得分:1)

UI Automation仅适用于您使用Xcode构建的本机应用程序。从您的问题来看,您似乎想要启动Mobile Safari或Chrome for iOS并使用UI Automation进行操作。那不行。仪器可以让您连接到您在模拟器或设备上运行的未编译的应用程序,但只有部分仪器工作且UI Automation不是其中之一。

如果您的Web应用程序包装在本机shell中,那么您可以使用UI Automation。您可能想要查看Phone Gap。它是一个完整的包装器,试图向Web应用程序公开本机功能,这是您不需要的。但是,如果您仍想尝试这一点,那么它是一个受到良好支持的网页封装的事实可能是一个很好的起点。

答案 1 :(得分:1)

UI Automation不支持Web自动化。尝试使用适用于iOS的Selenium Web驱动程序,有助于在iOS Safari浏览器上自动化Web应用程序。在设备和模拟器上运行。