我最近更新到Xcode 7 beta 5。我尝试在早期的项目中添加一个单元测试,但是我在@可测试的导入myModuleName行上得到了错误消息“没有这样的模块[myModuleName]”。
我试着
使用“选项清理生成文件夹”清理项目 检查“启用可测试性”(调试)在构建选项中设置为“是” 删除测试目标,然后重新添加iOS单元测试包
这些都不适用于这个项目(但是我已经在另一个项目中进行了测试)。有人遇到过这个问题并解决了吗?
我最近更新到Xcode 7 beta 5。我尝试在早期的项目中添加一个单元测试,但是我在@可测试的导入myModuleName行上得到了错误消息“没有这样的模块[myModuleName]”。
我试着
使用“选项清理生成文件夹”清理项目 检查“启用可测试性”(调试)在构建选项中设置为“是” 删除测试目标,然后重新添加iOS单元测试包
这些都不适用于这个项目(但是我已经在另一个项目中进行了测试)。有人遇到过这个问题并解决了吗?
当前回答
对我来说,解决办法就是重新命名 导入myproject_ios 来 导入myproject 在我更新了目标myproject-ios的产品名称在构建设置/包装/产品名称/从${TARGET_NAME}到myproject。
其他回答
当我将部署目标从9.3更改为11.0时,这为我修复了。
一般>部署目标>“11.0”
我遵循了上面的步骤,这是有效的。然而,我的项目有更多的问题。我得到了这个警告,我不能从我的主项目中访问类来测试我的测试目标。
我发现您的测试目标产品模块名称(YourTestTarget ->构建设置->搜索产品模块)不能与您的项目名称相同。
一旦我改变了我的测试目标的产品模块名称,一切都工作了。
我认为这可能是因为我删除了示例测试。
我删除了单元测试包,然后重新添加它,如下图所示,一切正常。
因此,在尝试了之前建议的所有解决方案后,这就是我如何让我的代码工作的。
I set 'Enable testability' to 'YES' in project's Build Settings I also set 'Defines Module' to 'YES' in my project's Build Settings. For the regular .swift file(s) within my project, say MyApp, I was going to write test cases for, I have both the main "MyApp" and the "MyAppUnitTests" Targets checked under Target Membership. I then selected my unit test file(s), declared the '@testable import MyApp' at the top, beneath the 'import XCTest', and only checked the "MyAppUnitTests" under Target membership
一切都很顺利。希望这能有所帮助。
环境:Xcode Version 9.0 (9A235) 场景:测试一个开源框架。 我也遇到了同样的问题:“没有这样的模块”。 解决方案: 选择Test目标。 选择构建阶段 添加要be的框架 通过链接二进制测试… 下面是测试文件: