如何重置环回内存DB

时间:2016-09-02 00:23:35

标签: node.js loopbackjs

我正在通过mocha运行多个环回测试(我们称之为test1.jstest2.jstest3.js。)

当我独立运行时,一切运作良好。但是,当我要求mocha全部运行它们时,内存数据库中第一次测试中创建的内容会与稍后进行的测试(测试2或3)发生碰撞。

有没有办法确保我们使用空数据库开始每项测试?类似的东西:

app.dataSources.db.reset()

非常感谢!

更新:我最终做了什么:我查看了DataSource代码,发现你可以在内存数据库上执行automigrate

before("wipe DB (if used with other tests)", function(done) {
    app.dataSources.db.automigrate(function(err) {
        done(err);
    });
});

2 个答案:

答案 0 :(得分:3)

通过db抓住app.dataSources.db并执行automigrate,如下所示:

before("wipe DB (if used with other tests)", function(done) {
    app.dataSources.db.automigrate(function(err) {
        done(err);
    });
});

干杯。

答案 1 :(得分:1)

通常你应该在每次测试后清理。

您可以使用hooks,例如afterEach