是否可以为一个测试设置环境变量?

新手上路,请多包涵

给出这样的东西:

 it('uses env variables correctly', function(done) {
    assert.equal(process.env.x * process.env.y, 10);
});

我只想为这个测试设置 xy 环境变量。那可能吗?

原文由 neverendingqs 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 199
1 个回答

这是最常见的方法:

 describe('env', function () {
  var env;

  // mocking an environment
  before(function () {
    env = process.env;
    process.env = { x: 2, y: 5 };
  });

  // running tests
  it('uses env variables correctly', function (done) {
    assert.equal(process.env.x * process.env.y, 10);
    done();
  });

  // restoring everything back
  after(function () {
    process.env = env;
  });
});

原文由 Leonid Beschastny 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题