【发布时间】:2009-11-21 07:40:20
【问题描述】:
我最近在开发过程中一直在使用 Moq,我喜欢我能够实现的目标。
但是,我发现自己将我的方法(以及大部分属性)虚拟化,以便我可以在测试中用模拟替换它们。
除了“你让你的所有方法和属性都可以覆盖”之外,这个行动过程还有哪些现实世界的影响?
【问题讨论】:
-
您是否考虑过让您的类实现一个定义所有这些方法的接口?这样你的 Mock 是基于接口的,你不必用 virtual 关键字显式标记你的所有方法......
-
这也会带来虚拟化的大部分缺点。但是,它确实让事情变得更加灵活,所以归根结底,它可能是更好的选择。
标签: c# moq virtual-functions