在非测试目标中使用XCTest

时间:2017-06-14 03:29:24

标签: ios objective-c swift xcode xctest

我正在围绕XCTest编写一个可重用的框架,用于我们的几个项目的UI测试。为此,我创建了一个Cocoa Touch Framework项目,我想通过pod分享。

是否可以将XCTest包含在这样的项目中(没有额外的测试目标)?即使我在构建阶段链接了XCTest.framework,我也会收到无法找到XCTest模块的错误。

1 个答案:

答案 0 :(得分:9)

您应该将$(PLATFORM_DIR)/Developer/Library/Frameworks添加到框架目标的Build Settings中的Framework Search Paths。基本上,您不必将框架与XCTest.framework链接起来。

此外,如果您要通过pod共享框架,可以将以下代码添加到podspec文件中:

Pod::Spec.new do |s|
  ...
  s.weak_framework = "XCTest"
  s.pod_target_xcconfig = {
    'FRAMEWORK_SEARCH_PATHS' => '$(inherited) "$(PLATFORM_DIR)/Developer/Library/Frameworks"',
  }
  ...
end