我最近更新到Xcode 7 beta 5。我尝试在早期的项目中添加一个单元测试,但是我在@可测试的导入myModuleName行上得到了错误消息“没有这样的模块[myModuleName]”。
我试着
使用“选项清理生成文件夹”清理项目 检查“启用可测试性”(调试)在构建选项中设置为“是” 删除测试目标,然后重新添加iOS单元测试包
这些都不适用于这个项目(但是我已经在另一个项目中进行了测试)。有人遇到过这个问题并解决了吗?
我最近更新到Xcode 7 beta 5。我尝试在早期的项目中添加一个单元测试,但是我在@可测试的导入myModuleName行上得到了错误消息“没有这样的模块[myModuleName]”。
我试着
使用“选项清理生成文件夹”清理项目 检查“启用可测试性”(调试)在构建选项中设置为“是” 删除测试目标,然后重新添加iOS单元测试包
这些都不适用于这个项目(但是我已经在另一个项目中进行了测试)。有人遇到过这个问题并解决了吗?
当前回答
对于那些一直滚动到最后一个答案仍然没有工作的人,这里是我在遵循所有其他答案建议后所做的事情。我使用的是Xcode 11:
在我的情况下,导致问题的原因是我更改了我的产品名称
我在主目标的构建设置中将产品名称更改为“新名称” 我必须为测试目标重新选择主机应用程序 我不知道更改产品名称也会更改产品模块名称,这是我的测试文件中用于模块导入的名称。我修改了我的import如下: @可测试导入New_Name 它工作
我希望这对你们有帮助
其他回答
除了列出的其他事情之外,我还必须将我试图测试的类的文件添加到单元测试模块的编译源中
确保在测试方案的构建设置下,测试目标在列表中。
在播放按钮旁边,选择测试方案,然后编辑方案…,转到Build部分,单击+ +并选择您想要测试的目标。
在我的例子中,我们有一个我们开发的内部目标(一些微小的差异),在合并之后,它被从测试配置中删除了。
这听起来是一个错误的构建设置的两个目标。 你需要确保:
对于两个目标,enable_teststability等于Yes。 测试目标的PRODUCT_MODULE_NAME值应该与应用程序的值不同。
XCode 12开发Beta 3
这个错误在我第一次构建项目后自行修复了。
我的解决方案在这里。
首先单击OdeAlSwiftUITest.swift,然后在目标成员中检查项目TargetName。