2

私はmochaを使用して、nodejs +mongodbWebアプリケーションの単体テストを作成しています。mongodbを操作するために必要なテストファイルはたくさんあります。

したがって、すべてのテストを実行する前に接続を開き、すべてのテストの後に接続を閉じたいのですが、その方法がわかりません。

dbtest_global.js現在、次のようなコードを持つファイルを作成しています。

before(function(done) {
    console.log('before all');
    global.connection = openMongoDB();
    done();
});

after(function(done) {
   global.connection.close(done);
});

それから他のテストでは、私はrequire('./dbtest_global')それを要求するために使用します。

しかし、実行するmochaと、beforeメソッドが複数回呼び出され、global.connection何度も変更されることがわかりました。

before実行時にとafterメソッドを1回だけ呼び出す方法はありますかmocha

4

2 に答える 2

0

変数が既に設定されている場合、 before 関数がすぐに戻ることを保証するプレーンなグローバル条件変数を使用しようとしましたか?

于 2012-05-26T18:27:48.213 に答える