【问题标题】:Xcode-Instruments cannot run app on simulator with the app target I chooseXcode-Instruments 无法使用我选择的应用程序目标在模拟器上运行应用程序
【发布时间】:2014-01-14 11:53:05
【问题描述】:

我正在尝试使用带有 Instruments 的 UIAutomation 在 iOS 应用上运行自动化。

几周前我尝试过它时效果很好。但是,我同时尝试了另一个自动化测试框架(来自 Square 的 KIF),现在当我尝试使用 Instruments 运行自动化时,它拒绝工作。

当它奏效时,我执行了以下步骤:

  1. 在 Xcode 中打开我的应用程序
  2. 运行应用程序
  3. 退出 iOS 模拟器
  4. 打开仪器(不一定通过 Xcode,只需在 Spotlight 中搜索仪器即可),选择自动化
  5. 仪器打开,当我点击选择目标时,我不需要浏览目标。我可以在列表中看到我的应用程序的名称(描述:应用程序名称没有 .app 扩展名,并且在名称前有一个图标,就像 Xcode 中输出窗口顶部出现的图标一样 - 一个黑白图标带有渐变)即使我之前没有打开过它,即使我第一次打开 Instruments 时也是如此。
  6. 我从列表中选择了这个目标,选择一个 javascript 文件让自动化运行,然后单击“记录”。曾经运行的自动化,我可以看到它在以前打开的模拟器中运行。

但是,打开 Instruments 不再向我显示目标列表中的目标。

我尝试从我的文件系统(从 Derived Data 文件夹)以及 iPhone Simulator 应用程序文件夹中选择一个目标;但没有运气。目标不再像以前那样出现(在上面的描述中),而是带有 .app 扩展名和典型的应用程序图标。自动化确实启动并打开了模拟器,但给出了以下消息:(尽管页面或脚本根本没有改变)

无法对无效元素执行操作:UIAElementNil from target.frontMostApp().mainWindow().elements()[2]

(本来想发图片,但不能发,因为我是新用户,还没有所需的权限——希望描述能弥补)

已经在这个问题上停留了很长时间,如果有任何帮助,我们将不胜感激!非常感谢!

【问题讨论】:

    标签: ios xcode instruments target performance-testing


    【解决方案1】:

    我刚刚使用 Xcode 中的 Product -> Profile 对应用程序进行了概要分析,这会打开带有目标的 Instruments。目标是 Derived Data -> MyApp -> Build Products -> Release-iphonesimulator -> MyApp.app -> MyApp unix executable 下的 Unix 可执行文件。

    此外,在使用 KIF 时,我为情节提要中的某些视图启用了可访问性标签。在 Instruments 中运行自动化测试时,该应用程序似乎以某种方式考虑了将可访问性标签设置为单个元素的视图,并且无法访问该视图上的子元素。为了使用 Instruments 运行,我只是禁用了视图的可访问性标签,它再次像魅力一样工作!

    【讨论】:

      猜你喜欢
      • 2012-01-04
      • 2015-02-17
      • 1970-01-01
      • 1970-01-01
      • 2014-10-25
      • 1970-01-01
      • 1970-01-01
      • 2016-02-11
      • 1970-01-01
      相关资源
      最近更新 更多