我正在使用mocha为 nodejs+mongodb Web 应用程序编写单元测试。有很多测试文件需要运行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
andafter
方法在运行时只被调用一次mocha
?