摩卡supertest ECONNRESET

我正在用Mocha和SupertesttestingNodejs服务器。 testing套件已经发展到1500多个testing。 突然之间,虽然所有的testing代码仍然有效,但是我的testing套件却失败了,并报错:

{ [Error: read ECONNRESET] code: 'ECONNRESET', errno: 'ECONNRESET', syscall: 'read' }

如果我注释掉一些先前运行的testing,导致错误更改的testing。 什么导致这种精神错乱?

我在Mike Google发布的这个Google Groupspost中find了答案:

我们使用mocha和supertest来发出这些请求,并且意识到我们实际上是在每个请求上轮换新的端口绑定,而不是重用现有的绑定。

所以编写这样的代码:

 var request = require('supertest'); var app = require('../app'); request(app).get(...); request(app).get(...); 

成为

 var request = require('supertest'); var app = require('../app'); var supertest = request(app); supertest.get(...); supertest.get(...); 

这解决了我们的问题。

对我也是如此。