【问题标题】:How to run OCUnit logic tests automatically before each build (run) of iOS app in Xcode 4?如何在 Xcode 4 中每次构建(运行)iOS 应用程序之前自动运行 OCUnit 逻辑测试?
【发布时间】:2011-10-22 05:48:55
【问题描述】:

看来我的一切设置都正确。当我运行 command ⌘ + U (或从菜单中选择产品 > 测试)时,我的测试运行良好。

最佳实践应该是尽可能频繁地运行测试,最好是在每次构建期间(在每次运行期间了解)。

如何强制 Xcode 4 执行此操作?我尝试过:

  • 设置目标依赖(将主应用目标依赖于测试目标)
  • 在主应用目标构建设置中启用“构建后测试”
  • 还在方案编辑器中勾选测试目标以运行主应用方案

但似乎没有任何效果。有没有人成功设置这个?

【问题讨论】:

  • 是否有必要在每次构建之前运行单元测试?如果将 Test After Build 构建设置设置为 Yes 并选择 Product > Build For > Build For Testing,Xcode 将构建项目并运行测试。
  • 是的。但这和我现在的情况一样——只要按下 command-u 并运行测试。但我厌倦了经常按这个。而且我经常忘记。然后有时会发生,我必须深入研究代码并找到错误。如果我对每个构建运行测试,这可能会立即被捕获。这也是最佳实践 - 在每次构建期间自动运行测试(“构建”我的意思是每次我想运行应用程序时)

标签: ios xcode4 ocunit


【解决方案1】:

终于弄明白了,虽然还不完美:

  1. 确保在您的测试目标上将“构建后测试”设置为是。
  2. 在您的主应用方案 - 构建 - 在“运行”下勾选测试包。

这会在运行应用程序时构建您的测试目标。多亏了“构建后测试”,测试也运行了。如果一切正常,应用程序在 sim 中启动。如果有任何失败的测试,如果你使用STAssert,你就会崩溃。如果是OCMock,您可以在日志检查器中检查到底出了什么问题。

有时断点不起作用。为了让他们工作,尝试产品 - 执行操作 - 测试而不构建。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-24
    • 1970-01-01
    • 2017-10-07
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 2011-11-08
    相关资源
    最近更新 更多