Tag: 犀牛模拟

如何防止虚拟方法被嘲笑?

我们有一个基类为INotifyPropertyChanged提供了一些默认实现(这个类被许多其他类使用,不能轻易更改): public class ObservableBase : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; // this is virtual so derived classes can override it (rarely used, but it is used) protected virtual void OnPropertyChanged(string propertyName) { PropertyChangedEventHandler handler = PropertyChanged; if (handler != null) { handler(this, new PropertyChangedEventArgs(propertyName)); } } } 现在我有一个接口和一个从ObservableBase派生的抽象基类,并实现该接口提供一些默认实现(主要用于属性): public interface INamedTrigger { string Name […]

每个主要模拟框架的现实利弊是什么?

另请参阅“ 为.Net选择模拟框架时应该考虑什么 ” 我正在尝试决定在我最近开始使用的.NET项目上使用的模拟框架。 我想加快我对不同框架的研究。 我最近阅读了这篇博客文章http://codevanced.net/post/Mocking-frameworks-comparison.aspx,并想知道是否有任何StackOverflow受众有任何可以添加的东西,以实现现实世界的优势和对框架的警告。 人们是否可以列出他们目前正在使用或已经调查过自己在.NET项目中使用的模拟框架的优缺点。 我认为这不仅有助于我决定当前的项目,还可以帮助其他人在为他们的情况选择正确的框架时做出更明智的决策。 我不是任何框架的专家,但我想得到支持和反对我遇到的主要框架的论据: RhinoMocks 起订量 TypeMock隔离器 NMock 痣 我错过了其他可用的替代品。 我也喜欢那些由于问题而转换或停止使用产品的用户的见解。