2016-05-17 71 views
2

鉴于以下设置:如何使用XCTest测试基于文档的应用程序?

  • 写在斯威夫特基于文档的OS X应用程序
  • OS X埃尔卡皮坦开发机
  • 的Xcode 7.x的
  • 新/升级XCTest框架

如何使用XCTest框架对应用程序的基于文档的部分进行UI测试?


不相关的,基于文档的功能,定期单元或UI测试是容易的,但我看不出怎么做就基于文档位的UI测试,因为在UI测试,我们到达成禁该应用程序,例如,嘲笑NSDocument类。

我听说过的一个建议是在测试资源文件夹中创建夹具文件/文件夹(具体取决于基于文档的应用程序的需求),并以某种方式打开测试。但是有没有更好的解决方案?

回答

2

提出固定装置建议的人是非常重要的。由于UI测试应该完全实现应用程序的功能而不涉及内部,因此您必须从外部加载文档。

XCTest不是(Xcode 7.x + El Capitan的)能够驱动文件 - >打开... - >选择一个文件 - >点击“打开”按钮流 - 它可以达到Open ...对话框,然后测试崩溃,因为它无法继续进行。这意味着您将无法通过用户界面打开文档。

这样,只有一个选择 - 你应该尝试通过某种在初始化传递的参数进行初始化应用吊射在必要的地方国有

+0

这是很好的了解,虽然我希望苹果将烤更好。这样做到XCTest的方式。你能否通过一种方式来更新你的答案,以这样一种方式打开路径,以便路径是相对的?否则,我们可能会以脆弱的绝对路径结束,只能在一个开发人员的Mac上工作,而其他任何人(也不是CI框) – user1475135

+0

我从来没有这样做过,但是离开我的头顶,你能够将文件作为二进制文件嵌入到项目中?然后,它只是您工作区的一部分,您可以通过多种方式访问​​它,包括通过字面相对路径。 –

相关问题