我经常说我应该避免嘲笑而更喜欢存根。
像FakeItEasy和NSubstitute这样的隔离框架使得它大部分时间都非常容易模拟或存根依赖。这些框架本身并不区分存根或模拟,而是将它们称为Fakes或Substitutes。据我所知,在“Mocking”的早期,创建模拟对象非常困难,因为使用了繁琐的Record和Replay机制。但今天似乎没有太大的区别了。
那么为什么我喜欢存根超过模拟?为什么嘲讽比茬更脆?
答案 0 :(得分:3)
你不应该'喜欢'Stocks而不是Mocks;相反,你应该为工作选择合适的工具:
答案 1 :(得分:-1)
至少在最近的模拟工具中,没有必要打扰存根与模拟。在实践中,模拟和存根在由模拟库创建时是相同的。这应该是这样的。
使用可用于Java的模拟库(以及C#.NET,如果我没有记错的话),你不能创建"只是"存根。您总是获得可以验证期望的模拟对象。