2014-06-11 33 views
5

我刚刚开始使用Node,并且一直在关注各种教程。Node.js/Express应用程序中的测试环境

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

如何配置我的规格,这样我可以:

  • 创建模型,自动每个天赋后,清理它们
  • 使用不同的数据库中创建测试对象(比如myapp_test)
  • 做这以尽可能干的方式,即不为每个描述块创建具有拆解前/后块的方式

回答

7

我会尽力回答你。

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

要做到这一点,我会假设你使用摩卡作为测试框架,你可以简单地使用功能beforeEach这样的:

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

Basicly我在做什么这里了清洁制我的数据库每个it之前,但你可以让它做任何你想要的。

用于创建测试不同的数据库对象

在这里,你应该使用节点process.env方法来设置你的ENV。 Here是一篇文章,了解它是如何工作的。 GRUNT项目非常重要,它对您的工作流程和配置有很大的帮助。

的方式,尽可能DRY做到这一点,即没有建立 前/与拆卸每个块之后描述块

我不知道我得到了什么你想看看文件的钩子before,after,beforeEach,afterEach。我想你会在这里找到你想要的。

+0

另外还有一个名为grunt-express-server(https://github.com/ericclemmons/grunt-express-server)的grunt项目,它可以帮助你设置env。 – Fougere

相关问题