如何使用vows.js运行清理?

too*_*oba 8 bdd node.js vows

我正在使用Vows.js来测试一些在数据库中创建记录的node.js.因此,它在数据库中创建了一些测试记录.我想在测试运行后删除这些记录.有没有办法在Vows中运行一批测试时运行清理功能?

Rah*_*ane 14

您可以teardown在上下文中定义函数,该函数在运行上下文中的所有测试后执行.

vows.describe('Foo').addBatch({
    'A Context' : {
       topic : { foo: 'bar' },
       'it works' : function (topic) { assert.equal(topic.foo, "bar"); },
       teardown : function (topic) { topic.foo = "baz" }
    }
});
Run Code Online (Sandbox Code Playgroud)

您可以在Vows自己的测试中看到这一点.