【问题标题】:xcode RunUnitTests script in unit test target?单元测试目标中的 xcode RunUnitTests 脚本?
【发布时间】:2010-12-04 23:51:27
【问题描述】:

我正在通过关注this guide 为我的 iOS 应用程序(使用 4.2 SDK)设置单元测试目标。该指南说 RunUnitTests 应该在我的目标的最后阶段通过 shell 脚本执行:

设置测试主机的值告诉 RunUnitTests 脚本(在最终构建阶段执行)启动指定的应用程序并将您的测试包注入其中

确实,我创建的目标确实有一个“运行脚本”步骤,但该步骤是空的。我的测试用例构建正确,因为“编译源”确实包含我的测试类,但它似乎没有运行,因为我有一个我认为应该失败的测试方法:

- (void)testClick {
    STAssertTrue(NO, @"sample test");
}

我认为这应该会导致 xcode 产生一些噪音,但我在构建目标时得到的只是“构建成功”。我在目标设置中缺少什么?我的单元测试目标的“Link Binary With Libraries”和“Run Script”步骤是否应该为空?目标肯定是在编译我的测试用例,但我认为它不知道链接或运行脚本。

在我的目标设置中,我已将“Bundle Loader”和“Test Host”属性设置为我认为正确的值,因为当它们设置不正确时,编译器会抱怨。

【问题讨论】:

  • 你使用的是什么版本的 Xcode?​​span>
  • 3.2.5 64 位。克里斯,我浏览了你关于这个主题的博客文章,它们很有帮助,只是一路上遇到了这个障碍。

标签: objective-c xcode unit-testing


【解决方案1】:

Paul,尝试将此代码作为脚本包含在您空的“运行脚本”构建阶段:

# Run the unit tests in this test bundle.
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"

并确保 shell 行为/bin/sh。我可能有这个错误,因为本特定指南中没有提到它,但这是我运行单元测试的方式,并且效果很好。

【讨论】:

    猜你喜欢
    • 2011-07-31
    • 1970-01-01
    • 2021-06-25
    • 1970-01-01
    • 1970-01-01
    • 2012-07-26
    • 2010-11-01
    • 1970-01-01
    • 2010-11-23
    相关资源
    最近更新 更多