【发布时间】:2026-01-26 16:40:01
【问题描述】:
Variable.h
....
#define BLAH = "blahstring"
.....
嗨, 我们如何在#define 下模拟一个变量? Google mock docs 主要讨论方法和对象,而不是模拟常量。最接近我能想到的将调用委托给假类让它返回测试值。
我有带有变量列表的头文件,我想模拟它,以便在测试中调用 BLAH 时,我得到“mockblahstring”而不是“blahstring”。
任何示例代码都会有所帮助。
谢谢。
【问题讨论】:
-
使用
#undef,您可能会更改宏定义 - 请参阅*.com/questions/9274500/…。但是,它可能对已编译的文件和您的更改不可见的文件没有影响。对您的问题的坦率回答是:不要那样做 - 在进行单元测试时更改常量没有多大意义......
标签: c++ unit-testing googlemock gmock