Javascript 摩卡和猫鼬超时

Javascript 摩卡和猫鼬超时,javascript,mongoose,mocha.js,Javascript,Mongoose,Mocha.js,我在用摩卡和猫鼬,我的前后功能一直挂着。这给了我一个错误: object model "before each" hook: Error: timeout of 2000ms exceeded 回调似乎从未被调用过。如何初始化数据库以进行测试?任何指导都将不胜感激 describe('Object model', function(){ before(function(callback){ if(mongoose.connection.db)

我在用摩卡和猫鼬,我的前后功能一直挂着。这给了我一个错误:

object model "before each" hook:
Error: timeout of 2000ms exceeded 
回调似乎从未被调用过。如何初始化数据库以进行测试?任何指导都将不胜感激

describe('Object model', function(){
    before(function(callback){
        if(mongoose.connection.db)
            return callback();
        else
            mongoose.createConnection(testDB.url, callback);
    });

    after(function(callback){
        mongoose.connection.close(callback)
    });

    beforeEach(function(callback){
        VerifyText.create({number:'12223334444', code: '1342'},function(err){
            callback(err);
        });
    })
    afterEach(function(callback){
        VerifyText.remove({},callback)
    })
    it('should not crash', function(callback){
        should.exist(true)
        callback();
    }) 
})

您的问题可能来自于使用mongoose.createConnection而不是mongoose.connect。Mongoose填充Mongoose.connection,您仅在使用.connect时使用它,如果是.createConnection,它将从createConnection函数返回connection对象

有点晚回答,但我在使用createConnection搜索我自己的问题时发现了您的问题