Jasmine/量角器,有一个共享的beforeAll方法

Jasmine/量角器,有一个共享的beforeAll方法,jasmine,protractor,Jasmine,Protractor,我希望在所有测试套件中都有一个共享的beforeAll()方法。有办法吗?(我的意思是,没有在所有测试套件中编写相同的before/afterAll方法) 谢谢,听起来您希望在所有规范文件中都显示一个可重用的beforeAll方法。在下面的示例中,您仍然需要将函数somefile.beforeAll传递给jasminebeforeAll方法: somefile.js exports.beforeAll = function() { // cool stuff here. } 规格js va

我希望在所有测试套件中都有一个共享的
beforeAll()
方法。有办法吗?(我的意思是,没有在所有测试套件中编写相同的
before/afterAll
方法)


谢谢,

听起来您希望在所有规范文件中都显示一个可重用的beforeAll方法。在下面的示例中,您仍然需要将函数
somefile.beforeAll
传递给jasmine
beforeAll
方法:

somefile.js

exports.beforeAll = function() {
  // cool stuff here.
}
规格js

var somefile = require('./path/to/somefile');

describe('some cool browser thing', function() {

  // instead of beforeAll(function() { });
  // send in your function here.
  beforeAll(somefile.beforeAll);

});

如果您需要在所有spec文件之前执行一次,请考虑使用。

听起来您希望在所有spec文件中都显示一个可重用的beforeAll方法。在下面的示例中,您仍然需要将函数
somefile.beforeAll
传递给jasmine
beforeAll
方法:

somefile.js

exports.beforeAll = function() {
  // cool stuff here.
}
规格js

var somefile = require('./path/to/somefile');

describe('some cool browser thing', function() {

  // instead of beforeAll(function() { });
  // send in your function here.
  beforeAll(somefile.beforeAll);

});

如果您需要在所有规范文件之前执行此操作一次,请考虑使用。

如果您使用任何任务运行程序(如gulp),您可以定义beforeAll函数并将其包装在gulp任务中,并在每个套件任务之前内部调用,作为先决任务,如下所示:

gulp.task('SuiteA', ['BeforeAll'], function () { 
  executeSuiteA_Tests('parameters'); // before calling this 'BeforeAll' task will be called
});

如果您正在使用任何任务运行程序(如gulp),您可以定义beforeAll函数,并将其包装在gulp任务中,并在每个套件任务之前内部调用,作为先决任务,如下所示:

gulp.task('SuiteA', ['BeforeAll'], function () { 
  executeSuiteA_Tests('parameters'); // before calling this 'BeforeAll' task will be called
});

它应该在所有套件之前调用一次还是在每个套件之前调用一次?在每个套件之前调用一次您可以将操作放置在配置文件的onPrepare()方法中。每个功能将调用一次。当然,它不会在每个套件之前调用,而是在整个运行会话之前调用一次。它应该在所有套件之前调用一次还是在每个套件之前调用一次?在每个套件之前调用一次您可以在配置文件的onPrepare()方法中放置操作。每个功能调用一次,当然不会在每个套件之前调用,而是在整个运行会话之前调用一次。