【问题标题】:Error while testing NodeJS and MongoDB stack using Mocha and Chai使用 Mocha 和 Chai 测试 NodeJS 和 MongoDB 堆栈时出错
【发布时间】:2016-08-11 04:42:06
【问题描述】:

现在,我正在运行 Mocha 测试并收到以下错误:

  Error: connect ECONNREFUSED 127.0.0.1:27017
    at Object.exports._errnoException (util.js:873:11)
    at exports._exceptionWithHostPort (util.js:896:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1077:14)

我认为这是因为我无法连接到端口 27017,因为我没有包括:

var express = require('express')
var app = express()

但是,让我特别困惑的是我如何通过测试连接到 MongoDB,以便我可以创建用于测试的虚假记录,然后销毁它们。如果有人能告诉我(请举个例子)怎么做,那就太棒了!

再次感谢。

【问题讨论】:

  • 你在运行 mongodb 吗?它是否在同一个端口 27017 上运行?

标签: node.js mongodb express mocha.js


【解决方案1】:

这个错误可能是 mongo 服务器没有运行或者来自多个服务器试图在同一个端口上监听。同样对于测试环境只能创建不同的文件夹或使用不同的端口。这样就可以在测试用例结束后删除文件夹

在 server.js 中

if(process.env === 'test')
{
    mongoport = 57017;
}
else
{
    mongoport = 27017;
}
mongoUrl = "mongodb://localhost:"+mongoport+"/student"
// use the mongodb url

在 test.js 中

//on start of test case

var fs = require('fs-extra');
fs.removeSync("test/db/");
fs.ensureDirSync("test/db/");
//ur test case definition

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2021-07-01
    • 2017-02-18
    • 2016-11-15
    相关资源
    最近更新 更多