Javascript 如何纠正“错误”;连接.readyState“;猫鼬对测试用例的影响;“连接”;至;“连接”吗;?

Javascript 如何纠正“错误”;连接.readyState“;猫鼬对测试用例的影响;“连接”;至;“连接”吗;?,javascript,node.js,express,mongoose,mocha.js,Javascript,Node.js,Express,Mongoose,Mocha.js,我在mongoose中创建了一个用户模型(注册)。该模型可以从mocha中创建的测试用例以及前端的注册表单中访问。新用户可以通过前端从注册表中保存,但不能保存用mocha编写的测试用例 当我检查代码时,mongoose的连接。readyState在测试用例上是2(连接),在用户注册表单上是1(连接) models/users.js var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/test');

我在mongoose中创建了一个用户模型(注册)。该模型可以从mocha中创建的测试用例以及前端的注册表单中访问。新用户可以通过前端从注册表中保存,但不能保存用mocha编写的测试用例

当我检查代码时,mongoose的
连接。readyState
在测试用例上是
2
连接
),在用户注册表单上是
1
连接

models/users.js

var mongoose = require('mongoose');

mongoose.connect('mongodb://localhost/test');

console.log('conn ready:  '+mongoose.connection.readyState);
// "conn ready: 2"  i.e connecting for test case as well as from user register form 

var Schema = mongoose.Schema,
    ObjectId = Schema.ObjectId,
    UserSchema = new Schema({
       // schemas
    });

UserSchema.statics.newUser = function (uname, email, pass) {
    var instance = new User();
    instance.uname  = uname;
    instance.email  = email;
    instance.pass   = pass;
    console.log("conn state: "+mongoose.connection.readyState); 
    // "conn state: 2"  i.e connecting for test case. But  1  i.e connected for  user register form 

    instance.save(function (err) {
      // Do rest
    });
};

var User = mongoose.model('User', UserSchema);

exports.User = User;

如何在测试用例上纠正mongoose的
连接.readyState

问题在于mocha测试文件中
it
方法的参数传递。我忘记将
it
方法的
done
参数放在测试用例中,并且没有在测试用例的末尾调用passed函数
done()

describe('User', function () {
    it('new user create', function (done) {
                                    ^^^^   
        User.newUser(
            'test','test@test.com', 'test123',
            function (err, user) {
                should.not.exist(err);
                done();
                ^^^^^^
            }
        );
    });
});