【发布时间】:2011-01-05 10:14:38
【问题描述】:
如果我需要测试一个与 B 类接口的 C++ 类 A,而 B 类的调用稍后会启动对 A 的回调,那将是一个好的设计模式吗?
我需要完全控制这些回调 - 当它们被执行时和什么信息。
我使用Google Test 和Google Mock 作为我的测试框架。在 Google Mock 的介绍中,他们解释了 difference between a fake and a mock。看来我需要一个假的 B 类而不是模拟。
在他们的文档中,他们详细说明了如何拥有 non-trivial implementations of B's functions,但这并不能解决我控制从 B 到 A 的回调的要求。
更新:
- 澄清一下:A 有回调。在 A 调用 B 的函数一段时间后,B 在 A 中启动回调函数。虽然并不重要,但在我的例子中,B 持有指向 A 的指针并调用预定义的接口函数(派生自纯虚类 A_abstract)。
【问题讨论】:
标签: c++ unit-testing callback tdd