标签: c# unit-testing
我想验证委托调用的正确性,但是我必须等待计时器提升它的事件(大约5秒),所以我应该在我的单元测试代码中做一些像Thread.Sleep(5000)这样的操作,我认为这不是单元测试的最佳实践。
这种情况还有其他更好的想法吗?
答案 0 :(得分:2)
模拟计时器并提升事件而无需等待
答案 1 :(得分:2)
您需要解耦使用计时器的代码并使其依赖于某些抽象。让我们说你自己的接口ITimer并将其作为依赖项注入。
ITimer
然后很容易模拟ITimer立即举起事件。