【发布时间】:2019-03-13 09:27:41
【问题描述】:
我的方法有多个 thread.sleep,有时会持续 20 秒。这是业务需求。我正在尝试通过模拟和跳过这些睡眠来对这些方法进行单元测试,以便测试可以更快地运行并且实际上不会等待 20 秒。使用起订量框架。 感谢您对如何实现这一点的任何想法。
【问题讨论】:
-
对于不是为可测试性而设计的代码,摩擦最小的方法是将睡眠调用分解为可以模拟的虚拟方法。
-
如果操作的持续时间要求为 20 秒,那么最有价值的测试将测试哪些运行实际实现。如果您想测试在睡眠之间调用的东西,请将这些操作提取到可以单独测试的方法或类中
标签: c# unit-testing moq