我的代码中有一些部分(例如在AppDelegate.m中),不应该为单元测试编译,比如:
#ifndef CONFIGURATION_TESTS
// Code that should not be compiled in the Unit Tests
#endif
当你在创建新项目时选择“添加单元测试”时,Xcode会设置目标。
在项目文件中,我已经为MyAppTests构建目标添加了CONFIGURATION_TESTS标志到预处理器宏,但没有添加到MyApp目标。
这是我在许多帖子中找到的建议方式。
但是这并不起作用,因为(我猜)MyAppTests目标具有MyApp目标作为依赖项,并且因为AppDelegate.m被添加到MyApp目标中,它将使用MyApp的编译设置进行编译,因此CONFIGURATION_TESTS未定义。
在单元测试文件中,这个宏被定义并按预期工作(因为测试文件只由MyAppTests目标构建?)
有人知道如何解决这个问题吗?我认为这应该是一个常见的问题...