Jasmine / Protractor,有一个共享的beforeAll方法

时间:2017-01-11 21:53:28

标签: jasmine protractor

我想在所有测试套件中使用共享的beforeAll()方法。有办法吗? (我的意思是,没有在所有测试套件中编写相同的beforeAll/afterAll方法)

谢谢,

2 个答案:

答案 0 :(得分:0)

听起来你想在所有规范文件中出现一个可重用的beforeAll方法。您仍然必须将函数somefile.beforeAll传递给下面示例中的jasmine beforeAll方法:

somefile.js

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

spec.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);

});

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

答案 1 :(得分:0)

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

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