我正在尝试创建一个WPF MVVM View 模型,该模型具有依赖项注入(inject)System.Timing.Timer
,并希望使用Moq测试 View 模型。
我为带有接口(interface)Timer
的ITimer
类编写了一个瘦包装器,但是不确定真正测试计时器对类的贡献的最佳方法。是否有一种很好的方法来“强制”模拟已发生的事件?别人有更好的技术吗?
最佳答案
您应该在isolation中测试您的代码。否则,您将不知道代码的行为是否符合预期,或者外部依赖项有一些副作用。因此,为外部资源(配置文件,计时器等)创建可模拟包装器是将SUT与外部代码分开的唯一方法。