如何对延迟函数执行单元测试?

How do I perform a unit test on a delayed function?

我正在实施 _.delay 并且我要为其编写单元测试。不过我不知道该怎么做,因为测试需要考虑时间延迟。这可能吗?我在我的测试套件中使用 Jasmine。

Sinon.js allows you to create fake timers 用于此类情况。你创建一个假计时器(它覆盖全局计时器),做你需要的任何设置,将假计时器向前勾选你需要的时间,然后检查你的结果。