我试图调用我所拥有的NSObject
子类的方法,然后说#34; main"在测试项目中的XCTestCase
子类的方法中进行项目。主项目的NSObject
子类导入" XXX-Swift.h"头文件(我混合Swift
和Objective-C
代码)。当我运行主项目时,一切正常,但是当我运行调用该子类的对象的测试时,我收到一条错误,指出导入中的Swift
头文件未找到。
我想我错过了测试目标中的一些设置,但我找不到......我该怎么检查?或者我该怎么做才能解决这个问题?
答案 0 :(得分:13)
转到Xcode项目>构建设置并键入"标题名称",您将获得以下选项:
确保必须存在名称为$(SWIFT_MODULE_NAME)-Swift.h
然后键入,"桥接标题"在Build Settings下,确保" bridging-header.h"的路径文件存在正确。
编辑:
1)确保您的项目名称"不包含空格 2)好" XXX-Swift.h"文件是在以下路径生成的,因此您需要将该路径添加到单元测试 - 转到构建设置,键入"标题搜索路径"并添加以下行
"$(TARGET_TEMP_DIR)/../$(PROJECT_NAME).build/DerivedSources"
有关详情,请参阅此链接:iOS - 'MyProject-Swift.h' file not found when running Unit Tests for Swift