我的问题是 - 我有一个具有System.Threading.Thread
依赖性的类,只要满足某个条件,它就会Start()
。我有一个问题嘲弄System.Threading.Thread
。
我通常使用 Moq 作为模拟对象,但我不能模拟Thread
(因为它是密封的)。
我确实知道我可以编写一个包含Thread的包装器,然后模拟该包装器 - 但是如果可能的话我想避免这种情况。
提前感谢任何想法!
答案 0 :(得分:3)
已经发布了几个问题试图通过一个很好的答案来覆盖这个问题,例如here。对于TLDR;问题空间实际上是你的代码是异步的,并试图使它适应模拟框架和单元测试,这是同步的。长话短说,这并不是一个很好的解决方案,但如果你按照链接我相信有一些阴暗的解决方案。祝你好运