Node.js / Express应用程序中的测试环境

时间:2014-06-11 17:04:23

标签: node.js express mongoose tdd jasmine

我刚开始使用Node,我一直在关注各种教程。

我已经创建了一个Express应用程序,并设置了Mongoose和Jasmine。

如何配置我的规格以便我可以:

  • 创建模型,在每个规范之后自动清理它们
  • 使用其他数据库创建测试对象(比如myapp_test)
  • 以尽可能干的方式执行此操作,即不使用每个描述块的拆卸创建前/后块

1 个答案:

答案 0 :(得分:7)

我会试着回答你。

  

创建模型,在每个规范后自动清理它们。

为此,我假设你使用Mocha作为测试框架,你可以简单地使用函数beforeEach,如下所示:

describe('POST /api/users', function() {
    beforeEach(function(done) {
        User.remove({}, function (err) {
            if (err) throw err;
            done();
        });
    });
});

基本上我在这里做的就是在每个it之前清理我的数据库,但你可以做任何你想做的事情。

  

使用其他数据库创建测试对象

在这里,您应该使用节点process.env方法来设置您的环境。 Here是一篇了解其工作原理的文章。需要花很多时间来完成GRUNT项目,它对你的工作流程和配置有很大的帮助。

  

以尽可能干的方式执行此操作,即不创建   每个描述块的拆解之前/之后

我不确定自己得到了什么,但请查看关于beforeafterbeforeEachafterEach的问题的文档。我想你会在这里找到你想要的东西。