【发布时间】:2023-03-23 08:55:01
【问题描述】:
我使用 GoogleTest,我想测试一些带有 #ifndef 的函数。
文件交流
bool myFunction() {
#ifndef FOO
return true;
#else
return false;
#endif
}
是否可以在特定测试期间强制使用#undef?像这样我可以在 2 个统计数据中测试函数(有定义和没有定义)。
【问题讨论】:
-
我认为您的问题是,是否可以在 Google 测试期间重新编译源文件,我认为不会。
-
因为你可以用MOCK替换test里面的一些函数,我希望也有一些东西可以定义
-
问题是
FOO是一个预处理器符号。它是否被定义......是一个仅在代码编译期间才有意义的问题。所以,为了得到你想要的,我们需要一种机制,谷歌测试将通过这个机制编译你的测试的两个版本,一个有定义,一个没有。我不确定是否存在这样的实用程序。
标签: c embedded googletest