[英]Mocking a Class For Unit Tests
我有Class A
具有另一个Class B
实例的Class B
。 我已经完成了Class B
中独立代码的单元测试。 对于其他操作, Class A
调用Class B
方法,使用其他类进行一些处理,然后调用Class B
方法。
我的问题是如何模拟Class A
的依赖关系并完成Class B
单元测试? 如果Class B
使用Class A
实例,我可以模拟Class A
并完成任务。 但是,在我的情况下, Class A
使用Class B
实例。
在这种情况下,如何模拟进行单元测试?
这取决于您如何设计class A
class B
和class B
。
如果它们经过精心设计,则可以轻松地为interface IB
-B的接口(使用GoogleTest&GoogleMock)进行模拟实现,然后在class A
单元测试中使用该模拟实现。 要查看如何使用GoogleMock,请选中GoogleMock CheatSheet 。
否则,您可能会遇到类似于Google Mock的情况:在目标类的构造函数中实例化的Mock私有变量成员,则可能需要使用一些preprocessor directives
来中断class A
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.