我最近更新到Xcode 7 beta 5。我尝试在早期的项目中添加一个单元测试,但是我在@可测试的导入myModuleName行上得到了错误消息“没有这样的模块[myModuleName]”。

我试着

使用“选项清理生成文件夹”清理项目 检查“启用可测试性”(调试)在构建选项中设置为“是” 删除测试目标,然后重新添加iOS单元测试包

这些都不适用于这个项目(但是我已经在另一个项目中进行了测试)。有人遇到过这个问题并解决了吗?


当前回答

在构建设置测试目标中,检查主机测试,它接受PRODUCT_NAME中设置的名称。 您应该在测试类中使用这个名称。

我建议不要更改PRODUCT_NAME(匹配主目标的名称)

其他回答

对我来说,问题是测试的iOS部署目标没有设置为与主目标相同。所以一定要检查这个。

在您的测试目标中:

Build Settings -> iOS Deployment Target -> iOS<same as the target you are testing>

我的解决方案在这里。

首先单击OdeAlSwiftUITest.swift,然后在目标成员中检查项目TargetName。

正如在这个答案中所描述的,我正在将Swift测试添加到一个只使用Obj-C的项目中。解决方案是添加一个虚拟的Swift类,之后Xcode会提示添加一个桥接头,然后删除Swift类。从那以后一切都好了。

我遵循了上面的步骤,这是有效的。然而,我的项目有更多的问题。我得到了这个警告,我不能从我的主项目中访问类来测试我的测试目标。

我发现您的测试目标产品模块名称(YourTestTarget ->构建设置->搜索产品模块)不能与您的项目名称相同。

一旦我改变了我的测试目标的产品模块名称,一切都工作了。

尝试了所有的解决方案。毫无效果。Xcode构建命令行在swift包模块未发现错误时失败。

错误:没有阿波罗模块 进口阿波罗

删除测试目标并重新添加它们对我来说是有效的。