javascript - SailsJS 应用程序中单元测试的全局变量

标签 javascript sails.js

我正在开发一个 Sails 应用程序,对于我的单元测试,我需要在 ./test/bootstrap.test.js 和 ./test/unit/controllers/*.test.js 中使用一些变量。我想到了全局变量,但我该如何创建它们?

我可以创建类似 ./config/mydatatest.js 的东西:

module.exports.myconf = {    
    anyobject: {
      bar: "foo"
    }
};

但是有没有办法在测试目录中创建mydatatest.js?

最佳答案

我喜欢将测试 视为特定环境的想法,例如开发生产。你可以创建一个 environment-specific file config/env/test.js 放配置:

/**
 * Test environment settings
 */
module.exports = {  
  myconf: {
    anyobject: {
      bar: "foo"
    }
  }
};

然后,您可以将 NODE_ENV=test 添加到启动测试的命令中(基于 the example from the documentation )

"scripts": {
  "start": "node app.js",
  "debug": "node debug app.js",
  "test": "NODE_ENV=test mocha test/bootstrap.test.js test/unit/**/*.test.js"
},

我在运行测试时使用此技术来使用 sails-memory 适配器。

关于javascript - SailsJS 应用程序中单元测试的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32198614/

相关文章:

javascript - 为什么 Firestore 将金额存储为字符串而不是数字?

c# - 如何从代码隐藏中调用此脚本?

node.js - 将 Passport-local 与 Sailsjs 一起使用时没有响应

Javascript 标签式搜索框

javascript - JQuery 使用 JSP 自动完成

javascript - e.target.value 显示值一键 'behind'

javascript - npm嵌套依赖,为什么不模仿gem呢?

html - Sails.js Assets 管理和引用

node.js - 如何在我的 Nodejs/Sails.js 应用程序中实现 OAuth?