考虑这个被测类:
class A
{
public:
bool isTrue();
void doSomething();
};
我想测试在其实现中调用 isTrue
的 doSomething
。
但我还想对 isTrue
方法设置期望值。
谷歌测试是否有最佳实践如何模拟被测类的方法?
最佳答案
将我的评论变成答案...
您可以使用一些技巧。像这样定义派生类:
class B : public A {
public:
MOCK_METHOD0(isTrue, bool());
using A::doSomething;
};
这显然只有在 isTrue
是 virtual
时才有效。
注意:检查贵公司关于“专门为测试而制作的代码”的测试指南,而不是测试真实代码。在您的情况下(遗留代码库),这可能没问题。
关于c++ - 如何使用谷歌测试模拟被测类中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20138650/