【发布时间】:2020-04-22 23:32:30
【问题描述】:
我正在尝试使用 gmock 模拟 静态函数成员。我在gMock Cookbook 上找到了一个关于 Mocking Free Functions 的部分。但是我不清楚..
例如,我想模拟一个名为 isActiveMode 的静态函数。与其直接调用 isActiveMode,不如为它引入一个接口,并有一个具体的子类调用静态函数:
class MyClassInterface {
public:
...
virtual bool isActive() = 0;
};
class MyClass: public MyClassInterface {
public:
...
virtual bool isActive()
{
return isActiveMode();
}
};
然后我定义模拟类:
class MyMock {
public:
MOCK_METHOD(bool, isActive, (), (override));
};
但这似乎不起作用.. 有人知道如何进行这项工作吗?
【问题讨论】:
标签: c++ unit-testing googletest googlemock