Javascript 当使用';异步等待';图案

Javascript 当使用';异步等待';图案,javascript,typescript,mocha.js,chai,Javascript,Typescript,Mocha.js,Chai,假设TypeScript中有以下类: class MongoDbContext implements IMongoDbContext { private connectionString : string; private databaseName : string; private database : Db; public constructor (connectionString : string, databaseName : string) {

假设TypeScript中有以下类:

class MongoDbContext implements IMongoDbContext {
    private connectionString : string;
    private databaseName : string;
    private database : Db;
    public constructor (connectionString : string, databaseName : string) {
        this.connectionString = connectionString;
        this.databaseName = databaseName;
    }

    public async initializeAsync () : Promise<MongoDbContext> {
        // Create a client that represents a connection with the 'MongoDB' server and get a reference to the database.
        var client = await MongoClient.connect(this.connectionString, { useNewUrlParser: true });
        this.database = await client.db(this.databaseName);

        return this;
    }
}
当我运行这个单元测试时,我的CMD窗口不会打印摘要。 好像挂在什么地方

在这种情况下我做错了什么


亲切的问候,

我已经找到了问题所在。 似乎我必须关闭我的“MongoClient”连接,摩卡才能正确退出

因此,我添加了一个额外的方法

public async closeAsync () : Promise<void> {
    await this.client.close();
}
公共异步closeAsync():承诺{ 等待此消息。client.close(); } 每次测试后都会调用此方法

public async closeAsync () : Promise<void> {
    await this.client.close();
}