这似乎是一个关于SO的常见问题,但我已经尝试了所有的建议,似乎无法克服它。 常见的解决方案似乎是战略性的:

process.setMaxListeners(0);

但我似乎无法弄清楚把它放在哪里。 它发生在我的测试用例中: https//github.com/socketwiz/swblog/blob/master/test/contact.js

一开始很好但是当我开始添加更多测试用例时,它开始产生以下错误:

(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at process.EventEmitter.addListener (events.js:160:15)
    at process.on.process.addListener (node.js:769:26)
    at Object.module.exports [as shutdown] (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/middleware/shutdown.js:41:13)
    at Object.proto._middleware (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:166:24)
    at next (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:77:18)
    at Object.configure (/Users/socketwiz/Sites/swblog/index.js:10:5)
    at Object.proto._configure (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:85:28)
    at Object.proto.init (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:35:14)
    at create (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/lib/appcore.js:258:13)
    at Promise.apply (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:1122:26)
    at Promise.promise.promiseDispatch (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:752:41)
    at /Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:1337:14
    at flush (/Users/socketwiz/Sites/swblog/node_modules/kraken-js/node_modules/q/q.js:108:17)
    at process._tickDomainCallback (node.js:459:13)

它似乎没有任何特定的测试,因为如果我评论一个失败的测试,它将只是移动到另一个测试。

为了解决这个问题,我尝试过设置:

server.setMaxListeners(0);

这里: https//github.com/socketwiz/swblog/blob/master/test/contact.js#L21

我也尝试过设置

server.setMaxListeners(0);

这里: https//github.com/socketwiz/swblog/blob/master/index.js#L15

但我似乎没有任何运气。 我应该提出任何想法,还是有更好的解决方案? 我正在使用节点v0.10.26。 我的整个项目可以在这里找到参考: https//github.com/socketwiz/swblog

尽我所能告诉一切正常,这只是一个警告,但它有点烦人:(

  ask by socketwiz translate from so

本文未有回复,本站智能推荐:

1回复

(节点)警告:可能检测到EventEmitter内存泄漏

我写了一个在cheerio.js和request.js之上构建的刮板脚本,以获取预订代理商网站之外的联系信息(URL和电子邮件)。 当它确实运行并返回我需要的所有信息时,我在运行它时连续五次收到以下警告: 我的直觉告诉我,由于我在另一个请求中嵌套了一个请求,因此我可能会收到此警告。
19回复

检测到可能的EventEmitter内存泄漏

我收到以下警告: (node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit. Trace:
2回复

在Supertest上使用PUT方法

如何在SuperTest中使用PUT方法? 我得到的只是“404 Not found”作为回应。 请求处理程序: 测试套件:
1回复

使用supertest测试下载是否成功

我正在使用supertest测试我的API端点,它工作得很好,但我无法弄清楚如何测试文件下载是否成功。 在我的路由文件中,我已将端点定义为: 函数getFile()看起来像这样: 然后,在我的测试文件中,我尝试以下方法: 我确定找到了该文件,因为它注销了File f
1回复

具有基本授权的超级测试

我正在尝试使用supertest开发测试。 问题是服务器中的所有路由都需要基本授权。 在每个请求上使用邮递员时,我将登录名和密码放入授权标签中,然后选择基本身份验证。 这应该返回角色列表,但是失败并显示“未授权”。 谁能帮助我进行这项测试。
1回复

Node.js supertest发布了gzip压缩数据

我想编写一个测试,将一些压缩数据发布到URL,如下所示,但它不起作用: 我认为问题是send不接受缓冲区。 我仍然希望expect()和end()方法有效。
1回复

无法使用Mocha和Supertest测试OPTIONS方法

使用mocha和supertest的相关问题Cant测试DELETE方法及其当前的两个答案没有解决我的问题:( 以下是测试定义: 它不断触发以下错误: 什么时候: 它说: 我已经尝试了很多事情,但无法完成这项工作。 我使用supertest ^1.0.
1回复

超级测试中的否定断言

使用Java进行测试的初学者。 我正在使用摩卡(Mocha),但路易斯(Louis)明智地对这个问题只字未提。 我有一个Node应用程序,其中有一些页面对匿名用户可见,而有些页面您如果没有登录就无法查看。因此,作为一个非常简单的开始, 等等 最初,这有效。 但是,开发人员已将
2回复

如何在Node的supertest中设置req.params参数?

我的OAuth中间件希望在req.params中获取参数。 .send({grant_type:'password'})无效。 我不知道它是用来干什么的。
2回复

两个文件在Mocha中使用Supertest导致EADDRINUSE

我正在使用supertest对服务器配置和路由处理程序进行单元测试。 服务器配置测试在test.server.js ,而路由处理测试在test.routes.handlers.js 。 当我使用mocha .运行所有测试文件时mocha . ,我得到EADDRINUSE 。 当我分别