Node.js - 在使用mocha和zombie进行测试时,为什么会出现泄漏?

时间:2012-05-11 04:27:58

标签: javascript node.js mocha zombie.js

我尝试使用mocha制作僵尸,但除非我使用mocha --ignore-leaks命令选项,否则我的测试总是失败并显示错误:

Error: global leaks detected: k, i, name, chars, char

我的测试看起来与此主题中解释的完全相同: Mocha and ZombieJS

我希望我能在那里发布我的问题,但作为一个新手,我无法对该主题发表评论,只会提出一个新问题。

你知道为什么我会得到这些泄漏吗?我正在使用mocha 1.0.3和zombie 1.0.0。

1 个答案:

答案 0 :(得分:6)

泄漏可以来自您自己的代码,也可以来自您使用的node_modules。 Mocha应该给出泄漏位置的一些提示,例如忘记用 var 声明局部变量。

// global leaks
a = 1;

// no leaks
var a = 1;

您可能也有兴趣在coffeescript中编写Node.js应用程序,因为它可以帮助您避免这样的错误。 (它会自动初始化变量,使用var http://coffeescript.org/

有一个模板可以帮助您开始https://github.com/twilson63/express-coffee