1

我需要在自动运行单元测试时禁用日志记录,以便可以显着提高测试速度(~20s vs 0.374s,现在只有几个测试,但测试代码中有一个大循环)。

我试图在测试代码头中定义一个宏,如下所示:

#define UNIT_TESTING

在要测试的代码中,我首先检查是否定义了这样的宏:

#ifndef UNIT_TESTING
NSLog("whatever log");
#endif

但是好像不行,我猜是不是因为我没有在要测试的代码中导入测试代码头。我不能这样做,因为即使没有进行单元测试,也不会打印日志。

我对objective c比较陌生,并且来自Java背景,我猜标题/宏定义有问题。

还有一个问题是,我是否需要为单元测试定义一个宏,不是已经有类似的东西了吗?

4

1 回答 1

1

您需要UNIT_TESTING在单元测试目标的构建设置中定义。

在左侧窗格中选择您的项目,然后选择单元测试目标,然后选择 Build Settings --> All --> Preprocessor Macros。

于 2012-07-20T06:14:22.953 回答