c++ - 谷歌测试宏

标签 c++ googletest

我很好奇是否为谷歌测试框架定义了一个宏,它允许我测试代码是否作为测试的一部分编译。我有兴趣实现以下行为:

int someFunction()
{
    // do some stuff and some checks
    if(i_am_not_happy_with_results_above)
    {
    #if CODE_COMPILED_AS_PART_OF_TEST
        FAIL()
    #else
        exit();
    #endif
    }
    return 42;
}

最佳答案

如上所述,Google Test 中没有这样的东西,但是您可以通过定义预处理器 token 来实现这一点,只需将 -DCODE_COMPILED_AS_PART_OF_TEST 添加到您的构建命令以在测试模式下构建。例如,

g++ -DCODE_COMPILED_AS_PART_OF_TEST source.cpp

关于c++ - 谷歌测试宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22450185/

相关文章:

c++ - Visual c++ Express - 恢复源代码

c - 如何测试C中函数调用的顺序?

c++ - 如何在我的 visual studio 项目中设置 gtest

CMake 无法正确链接库

c++ - 如何为非静态容器中的值编写值参数化测试?

零附近的 C++ 浮点比较与 Gtest 失败

c++ - 如何将a.dll描述/公司信息包括在内?

c++ - 支票书写器 : Getting the program to display values 10-19 as words

c++ - 比较两个 C 风格字符串的正确函数是什么?

c++ - 为什么我必须通过this指针访问模板基类成员?