如何修复 @testable 导入无法在 xcode 单元测试中加载模块

Posted

技术标签:

【中文标题】如何修复 @testable 导入无法在 xcode 单元测试中加载模块【英文标题】:How to fix @testable import failed to load module in xcode unit testing 【发布时间】:2019-05-16 07:34:13 【问题描述】:

我创建了一个没有单元测试的 Xcode 项目。当我尝试创建新的单元测试并尝试导入 @testable import 'ProjectName' 时,我添加了可可豆荚,它给出了错误无法加载模块'ProjectName'。你能帮我解决这个问题吗

@testable import 'ProjectName' 加载模块失败

【问题讨论】:

和这里一样。你解决了这个错误吗? @Capotasto 是的,我已经解决了 @Capotasto 请删除 unittest 并重新添加单元测试文件 我也解决了这个错误。谢谢!在我的情况下,我只是运行一个测试构建,忽略了导入失败加载模块的错误,然后它工作并且错误消失了。 【参考方案1】:

像这样更新 Podfile 并检查

target 'App' do
  pod 'Alamofire'

  target 'Demo AppTests' do
    inherit! :search_paths

  end

  target 'Demo AppUITests' do
    inherit! :search_paths

  end  
end

【讨论】:

@CamScen 我必须在更改文件后运行pod install。另外,我有一个需要添加的目标,而不是两个【参考方案2】:

如果在尝试@Naveen 的回答后您的问题没有得到解决,并且您的主要目标中有 Obj-c bridging-header,您应该为您的测试创建另一个具有相同值的 briding-header。

【讨论】:

【参考方案3】:

对我来说,它有助于清理构建文件夹。您可以在以下位置找到它:产品 > 清洁构建文件夹。 (快捷键:shift + cmd + k)

【讨论】:

以上是关于如何修复 @testable 导入无法在 xcode 单元测试中加载模块的主要内容,如果未能解决你的问题,请参考以下文章

如何修复“ImportError:无法导入名称 IncompleteRead”?

如何修复 ImportError:无法从“html.parser”导入名称“HTMLParseError”?

无法在测试用例中打开捆绑文件

使用@testable时,“模块未编译用于测试”

import pymongo 导致“ImportError: cannot import name BSON”。你如何修复导入错误?

如何修复 Swift Playground 中的“无法查找符号”错误