【发布时间】:2017-01-01 01:29:25
【问题描述】:
我经常读到应该避免模拟并喜欢存根。
FakeItEasy 和 NSubstitute 之类的隔离框架在大多数情况下使模拟或存根依赖项变得非常容易。这些框架本身并不区分存根或模拟,而是将它们统称为假货或替代品。据我所知,在“模拟”的早期,创建模拟对象非常困难,因为使用了繁琐的记录和重放机制。不过今天好像没什么大区别了。
那么为什么我应该更喜欢存根而不是模拟呢?为什么模拟比存根更脆弱?
【问题讨论】:
标签: c# unit-testing mocking stubbing