我遇到了禁用某些代码行以进行测试的问题。
我有2个目标 - 第一个我的产品,第二个我的KIF测试目标。 在KIF测试目标中,宏定义为KIF = 1 在Product target中,宏定义为KIF = 0
然后代码包含在以下内容中:
#ifndef KIF
.... some code.....
#endif
不幸的是,此代码不适用于任何目标。
可能是因为产品目标设置为KIF目标的目标依赖项?
你能帮我解决一下我的问题吗?
答案 0 :(得分:2)
这比我想象的要容易得多。转到您的项目>通过点击加号' +'配置并创建新配置按钮>重复调试配置,然后您可以创建新变量,如TESTING,并仅为您的配置定义它。下一步是在您的代码中包含#if代码并更改配置。
#if TESTING
{
...some code for testing needs...
}
#else
{
...your regular code...
}
#endif
在产品中>方案>编辑方案>测试,将构建配置更改为您自己的配置并进行测试。
答案 1 :(得分:1)
对于我来说,UnitTest作为预构建预处理器宏。
#ifdef TEST
#endif
如果您想要自定义构建的自定义变量,请执行以下操作:
#ifdef MYTESTVARIABLE
//some code here
#endif