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