如何为每个启动配置多次运行相同的规范

How to run the same specs several times for each startup config

本文关键字:运行 配置 启动      更新时间:2023-09-26

Jasmine是我最喜欢的测试javascript框架。到目前为止,我写的规范没有任何问题。

但有一天,我决定用几种图形类型来扩展我的应用程序(这只是一个简单的思维导图工具),而不是一种。现在它支持"Wbs"answers"Orgchart"数据模型。很明显,我不想将以前数据模型的所有当前规范复制到新创建的数据模型中。

可能在我的情况下,只修复一个全局beforeEach函数就足够了?现在看起来像

var graph;
beforeEach(function () {
  graph = new Graph({
    template: Templates.Orgchart
  });
});

所以问题是,我如何才能为我的每种类型的数据模型运行相同的规范。或者是否有任何方法可以将参数传递给jasmine.getEnv().execute()?任何帮助都将不胜感激,谢谢。

您可以在循环中运行测试:

['Wbs', 'Orgchart'].forEach(function(dataModel){
  var graph;
  beforeEach(function () {
    graph = new Graph({
      template: Templates[dataModel]
    });
  });
  describe('with ' + dataModel, function(){
//your tests
  })

})