我有一个现有的iOs项目,我想添加一个单元测试目标。我想测试的课程都是客观的c和swift。
我设法创建了一个测试目标,它允许我通过将实现swift文件添加到测试目标来测试swift only代码。
但是,只要我导入或使用导入目标c代码的类,我就会在构建测试目标时遇到链接器问题:
...
Symbols not found for architecture x86_64
我已经尝试将objectivec mm文件添加到我的目标,这会导致我传递链接器错误,但是我导致我导入的类出现unresolved identifier
错误。
我正在使用xcode 9和swift 3。
编辑:我认为这可能与测试目标中没有swift桥接头的事实有关,但是我不确定如何添加它。
答案 0 :(得分:0)
您的测试项目是一个单独的目标,应该将其依赖的所有文件单独链接进行测试。首先,单击其中缺少的.m
个文件之一,检查测试项目是否也包含在目标中。如果是这种情况,则测试项目使用的桥接头可能存在问题。找出它从目标的构建设置中使用哪一个,并查看它是否包含与主项目相同的文件。