如何对keystonejs模型进行单元测试?

时间:2014-03-06 17:00:33

标签: node.js mongodb unit-testing mongoose keystonejs

有没有办法为keystonejs运行测试,这些测试也会遇到测试或真正的mongodb实例?

如果类似于Django的方式,那就太好了。

1 个答案:

答案 0 :(得分:14)

目前还没有任何针对KeystoneJS网站实施单元测试的官方示例,但是没有什么能阻止您使用像mocha这样的框架编写测试,就像在任何其他node.js应用程序中那样。 / p>

您需要初始化Keystone,注册模型,然后连接到数据库并执行测试而无需启动Web服务器。像这样:

<强> ./ tests.js

var keystone = require('keystone');

keystone.init({
    'name': 'Your Project'
});

keystone.import('models');
keystone.mongoose.connect('localhost', 'your-database');
keystone.mongoose.connection.on('open', function() {

    // Run tests here

    // Use keystone.list('Key') to access Lists and execute queries
    // as you would in your main application

});

然后运行tests.js,或使其成为npm / grunt / etc.脚本。

密切关注issue #216的综合测试框架。