node.js - 测试以确保没有'悬空回调'

时间:2011-02-20 11:48:16

标签: testing node.js

我希望我的node.js测试确保一旦测试结束并且调用了test.finish()或类似的代码,就没有更多的代码等待运行了。没有更多的I / O等待完成,没有更多的计时器等待开火等等。

这在node.js中是否可行?

3 个答案:

答案 0 :(得分:1)

使用nodeunit时,每个测试函数都会一直运行,直到调用test.done()为止。每个测试功能都需要调用它。这样您就可以确保已经执行了回调。我还想使用async模块来清理我的代码(回调)。

答案 1 :(得分:0)

您是在每次测试开始时使用test.expect()而在每次测试结束时使用test.done()吗?把它们想象成开始和结束括号。

答案 2 :(得分:0)

I wrote my own,它基本上为每个测试旋转一个节点实例。如果您的测试留下了回调悬挂,节点就不会退出,整个测试套件会挂起而不是提前退出成功(这会很糟糕!)