使用XCTest设置一个带有两个测试目标的TestProject,用于iOS和OSX以及共享单元测试

Cou*_*per 7 macos xcode ios xcode5 xctest

我想在一个Xcode项目中的两个单独的测试目标中有一个单元测试库的单个项目,该库在Mac OS X和iOS上执行单元测试.单元测试文件应共享.

这似乎是不可能的,或者不打算工作,或者以其他方式揭示一个错误:

虽然可以为每个iOS和Mac OS X运行完整的单元测试(通过命令产品 - >测试),但是通过单击装订线中的菱形来运行单独的测试方法是不可能的:

在此输入图像描述

执行此操作时,Xcode会打开一个错误表,告诉:

运行目标My Mac 64位对您选择执行的测试无效.

请选择支持您要执行的测试的运行目标.

在此输入图像描述

我想,问题似乎是在一个有两个目标的项目中,共享单元测试文件必须与iOS Mac OS X测试目标相关联.也就是说,为iOS和MacOSX目标设置特定单元测试文件的"目标成员资格".

当将共享单元测试文件关联到一个目标时,从装订线中的菱形开始单独测试似乎只有效.

有没有人设法让这个工作?什么是替代解决方案?

ber*_*bie 0

如果您删除每个平台的主目标和测试目标中架构 (ARCHS) 构建设置的所有自定义条目,这种情况就会消失。仅依靠 OSX/IOS 默认构建设置即可工作。

请注意,当您在 OSX 和 IOS 方案之间切换时,您首先必须等到索引器达到最低限度,并且您可能首先需要运行该平台的所有测试。之后,您至少可以从测试导航器启动单个测试。看起来 Xcode 有时在显示源代码内联测试按钮时仍然存在问题。尽管运行单个测试的可能性是存在的。