【问题标题】:Test environment in Node.js / Express applicationNode.js / Express 应用程序中的测试环境
【发布时间】:2014-09-11 16:14:56
【问题描述】:

我刚刚开始使用 Node,并且一直在学习各种教程。

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

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

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

?

【问题讨论】:

    标签: node.js express mongoose tdd jasmine


    【解决方案1】:

    我会尽力回答你的。

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

    为此,我假设您使用 Mocha 作为测试框架,您可以像这样简单地使用函数beforeEach

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

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

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

    在这里,您应该使用节点process.env 方法来设置您的环境。 Here 是一篇了解其工作原理的文章。对 GRUNT 项目进行大量工作,这对您的工作流程和配置内容有很大帮助。

    以尽可能 DRY 的方式执行此操作,即不创建 before / after 块,每个描述块的拆卸

    我不确定我是否得到了您想要的,但请查看文档中的钩子 beforeafterbeforeEachafterEach。我想你会在这里找到你想要的。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-03
    • 2011-11-24
    • 1970-01-01
    • 2012-05-23
    • 2013-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多