passportjs, mocha, supertest ECONNREFUSED

3

我试图使用mocha、supertest和passport测试身份验证,但是我遇到了连接被拒绝的错误。我认为这与我启动应用程序的方式有关...

var testUser = {
    "email": "test@test.com",
    "password": "test"
};

var app = require('../../server');

var request = require('superagent');
var user = request.agent(app);

describe('authentication api ', function() {

    it('should login a user', function(done) {
        user.post('/login')
            .send(testUser)
            .end(function(err, res) {
                if(err) throw err;
                done();
            });
    });
});

这个用户确实存在于我的Mongo数据库中。在我的服务器文件中,它比当前文件高两级:

module.exports = app.listen(port, function() {
    console.log('app listening on port: ' + port);
});

将测试环境设置为不同的端口有助于我。 - eagor
1个回答

0

这个问题似乎在2015年3月已经修复。Yeoman Dafmonk Angular Fullstack生成器仍在使用较早版本的supertest。我通过打开我的package.json文件并将supertest版本从“〜0.11.0”更新为“1.0.1”来解决了这个问题。然后我运行了:npm prune && npm install。ECONNREFUSED问题消失了。

查看这个bug和最后的提交:https://github.com/visionmedia/superagent/issues/314


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接