你能使用 googlemock 对不属于类的函数设置期望吗?

Can you use googlemock to set expectations on function that does not belong to a class?

本文关键字:函数 设置 期望 不属于 googlemock      更新时间:2023-10-16

如果我的主函数func是从main调用的,我可以使用googlemock说EXPECT_CALL(no_class_here,func)。次(1)?

no_class_here类似于 scope 运算符,以指示它不属于类 ::。我不知道这将如何工作,但在函数实现中

我不想将 func 放在类中,因为它只是一个静态函数并且不需要类来运行......

我应该放弃,把我要测试的所有东西都一直放在一个课堂上吗?我知道 JUnit 和 JMock,一切都是 Java 中的一个类,所以别无选择,但我想从一个只有虚函数的类衍生而来的能力可能是允许 googlemock 完成其工作的机制......

恐怕不是。 在googlemock与模拟自由函数相关的文档中,他们展示了如何在接口类中用等效函数替换自由函数。

您是否认为是否值得纯粹为了允许测试而更改现有代码取决于您。 我通常可能不会这样做,尤其是在您将非成员函数更改为成员函数的情况下。