8

有什么方法可以为 keystonejs 运行测试,它也命中测试或真正的 mongodb 实例?

如果类似于 Django 的做法,那就太好了。

4

1 回答 1

14

目前还没有任何为 KeystoneJS 站点实现单元测试的官方示例,但是没有任何东西可以阻止您使用 mocha 之类的框架编写测试,就像在任何其他 node.js 应用程序中一样。

您需要初始化 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. 脚本。

密切关注问题 #216以获取集成测试框架。

于 2014-03-09T14:06:23.263 回答