Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在mocha初始化和实际测试之间共享变量_Node.js_Unit Testing_Mocha.js - Fatal编程技术网

Node.js 在mocha初始化和实际测试之间共享变量

Node.js 在mocha初始化和实际测试之间共享变量,node.js,unit-testing,mocha.js,Node.js,Unit Testing,Mocha.js,请看示例: var app describe('application', function() { beforeEach(function(done) { app = initialize() }); afterEach(function(done) { app.close(done) }); it('some interaction with app', function () { /// }); }); app是一个全局变量,从样式的角

请看示例:

var app
describe('application', function() {
  beforeEach(function(done) {
    app = initialize()
  });

  afterEach(function(done) {
    app.close(done)
  });

  it('some interaction with app', function () {
    ///
  });
});
app
是一个全局变量,从样式的角度来看,它是不好的,并且使得
initialize
不太有用。 是否有更好的方法来共享
应用程序
变量?

摩卡目前没有“共享行为”的概念,但是“环境”促进了这一特性

因此,对于您的情况,可以按如下方式进行:

describe('application', function() {
  var app;
  beforeEach(function(done) {
    app = initialize()
  });

  afterEach(function(done) {
    app.close(done)
  });

  it('some interaction with app', function () {
    ///
  });
});
顺便说一句,我们也讨论过类似的问题