从测试文件Compound.js中读取环境特定变量

时间:2013-05-23 05:10:14

标签: node.js testing environment-variables mocha compoundjs

我正在开发一个复合js app。在environment / test.js中,我导出了一个变量,如下所示:

app.host = "http://mysite.com"

当我按以下方式运行应用程序时:

NODE_ENV=test node .

我可以通过提供app.host来访问host的值。到这儿一切都很好。

我正在使用mocha进行测试。当我尝试从我的测试文件访问app.host时,我收到一条错误消息,

ReferenceError: app is not defined.

如何从test / * .js文件中访问environment / test.js文件中的变量会有所帮助。提前谢谢。

1 个答案:

答案 0 :(得分:0)

<强>环境/ test.js

module.exports = {
  host: "http://example.com"
};

<强> app.js

var app;

if (process.env.NODE_ENV === "test") {
  app = require("./environments/test.js");
}

console.log(app.host);

如果您将模块加载到Mocha测试的顶部,则应该没问题。