测试后清理数据库功能

时间:2018-01-23 20:36:22

标签: node.js mongodb mongoose end-to-end chimp.js

我试图在每个功能之后清理数据库但是我尝试的每个方法都失败了。我试图删除整个mongo集合,dropDatabase几乎所有东西(我猜)

包括

mongoose.connection.dropDatabase(() => {})

User.remove({ 'local.email': 'test@test.pl' })

似乎数据库中的记录没有发生任何变化。 顺便说一句,我的数据库托管在mlab.com(它不是本地数据库)上。我在启动应用程序(node server.js)时建立了moongose.connection,所以我认为不需要从钩子连接到db。

我想在下面提供的钩子中实现这段代码。

enter image description here

2 个答案:

答案 0 :(得分:0)

无论您的数据库位于何处 - 唯一的区别是主机地址,端口和凭据

所以我使用deleteMany清理我的收藏

const MongoClient = require('mongodb').MongoClient;
...
MongoClient.connect("mongodb://localhost:27017/test_db", function(err, database) {
  if(err) return console.log(util.inspect(err));
  db = database.db("test_db");
  cCol = db.collection("collection_to_be_cleaned");
  if(cCol)
    cCol.deleteMany({}, function(err, result){
      if(err) return console.log(util.inspect(err));
      console.log("cleaned up ", result.deletedCount, " records");
    });    
});

答案 1 :(得分:0)

我设法使用提供的屏幕截图enter image description here

中的代码对此进行排序
相关问题