gpt4 book ai didi

node.js - 使用带有 grunt 和 mocha 的测试数据库

转载 作者:可可西里 更新时间:2023-11-01 09:31:10 24 4
gpt4 key购买 nike

我正在使用 Mongoose 在 Node.js、Express 和 MongoDB 中构建网络应用程序。当我用 Grunt 运行我的 Mocha 测试时,我想有一个专用的数据库,这样我就不会弄乱我用于开发的数据库。我该怎么做?

我目前在/config/db.js 的文件中有我的开发数据库配置信息,该文件在启动时加载并连接到我的 app.js 文件中的开发数据库。我如何让在 Grunt 任务中运行的 Mocha 测试在运行 Grunt 时动态使用测试数据库?我试图在我的 Mocha 测试文件中的 before() Hook 中与我的测试文件中的开发数据库断开连接,然后连接到测试数据库。但是,它继续使用开发数据库。示例如下:

before(function(done) {
if(mongoose.connection.db) mongoose.connection.close();
mongoose.connect(<test_db_uri>, done);
}

最佳答案

您的问题接近于以下问题 Test environment in Node.js / Express application .

基本上你应该做的是使用环境变量(例如“NODE_ENV”)通过 process.env.NODE_ENV 访问它并根据它的值调用正确的配置文件。你应该看看grunt-express-server这对您的环境设置有很大帮助。

希望这对您有所帮助!

关于node.js - 使用带有 grunt 和 mocha 的测试数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26169117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com