如何模拟调用其基类方法的派生类?
本文介绍了如何模拟调用其基类方法的派生类?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在对派生类进行单元测试,希望EXPECT_CALL
调用属于其基类的某个方法。
例如:
我不能只为派生的和期望的move
创建模拟,因为没有依赖项,并且将调用实际的move()。
我如何才能模拟move()
?我的最终目标是需要使用正确的参数值(在本例中为param1 and param2
)来调用Move()。
当然,这不是实际代码,而只是一个表示
我知道就UT而言,这不是一个好的设计,但这是为了测试一些我不允许重新格式化(但需要进行UT)的遗留代码。因此,能够模拟和测试Move()是我真正拥有的最佳选择。
我们将非常感谢您的帮助。谢谢!
推荐答案
我认为没有任何方法不使用一些预处理技巧。在这些技巧中,当测试时使方法虚拟应该是最不痛苦的。 这样做就足够了:
然后您可以这样模拟它:
这篇关于如何模拟调用其基类方法的派生类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!