"XXX-Swift.h" 在测试项目中找不到文件
"XXX-Swift.h" file not found in test project
我正在尝试在测试项目的 XCTestCase
子类的方法中调用我在比方说 "main" 项目中的 NSObject
子类的方法。主项目的 NSObject
子类导入 "XXX-Swift.h" 头文件(我正在混合 Swift
和 Objective-C
代码)。当我 运行 主项目时一切正常,但是当我 运行 测试调用该子类的对象时,我收到一条错误消息,指出导入中的 Swift
头文件不是找到了。
我想我在测试目标中遗漏了一些设置,但我找不到哪个...我应该检查什么?或者我应该怎么做才能解决这个问题?
转到 Xcode 项目 > 构建设置并键入 "header name",您将获得以下选项:
确保必须存在名称为$(SWIFT_MODULE_NAME)-Swift.h
的文件
然后在 Build Settings 下键入 "bridging header" 并确保 "bridging-header.h" 文件的路径正确存在。
已编辑:
1) 确保您的 "Project Name" 不包含空格
2) "XXX-Swift.h" 文件在以下路径生成,因此您需要将该路径添加到单元测试 - 转到构建设置,键入 "Header Search Paths" 并添加以下行
"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources"
更多可以参考这个link:iOS - 'MyProject-Swift.h' file not found when running Unit Tests for Swift
我正在尝试在测试项目的 XCTestCase
子类的方法中调用我在比方说 "main" 项目中的 NSObject
子类的方法。主项目的 NSObject
子类导入 "XXX-Swift.h" 头文件(我正在混合 Swift
和 Objective-C
代码)。当我 运行 主项目时一切正常,但是当我 运行 测试调用该子类的对象时,我收到一条错误消息,指出导入中的 Swift
头文件不是找到了。
我想我在测试目标中遗漏了一些设置,但我找不到哪个...我应该检查什么?或者我应该怎么做才能解决这个问题?
转到 Xcode 项目 > 构建设置并键入 "header name",您将获得以下选项:
确保必须存在名称为$(SWIFT_MODULE_NAME)-Swift.h
然后在 Build Settings 下键入 "bridging header" 并确保 "bridging-header.h" 文件的路径正确存在。
已编辑:
1) 确保您的 "Project Name" 不包含空格 2) "XXX-Swift.h" 文件在以下路径生成,因此您需要将该路径添加到单元测试 - 转到构建设置,键入 "Header Search Paths" 并添加以下行
"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources"
更多可以参考这个link:iOS - 'MyProject-Swift.h' file not found when running Unit Tests for Swift