JavaScript、Jasmine、隐藏禁用的 jasmine 规范

标签 javascript jasmine

我想在运行选定测试时隐藏禁用的 jasmine 规范。我将进行大量测试,因此我不想在每次刷新后向下滚动以到达底部的测试。

Jasmine 有没有允许它的选项?我已经浏览了文档,但没有找到任何东西。

最佳答案

如本期所述,这是 Pivotal 的设计决定。

https://github.com/pivotal/jasmine/issues/510

这是问题中评论的修复。

在 jasmine-html.js 中,添加一个函数以递归地确定结果节点是否具有任何事件规范:

function hasActiveSpec(resultNode) {
  if (resultNode.type == "spec" && resultNode.result.status != "disabled") {
    return true;
  }

  if (resultNode.type == 'suite') {
    for (var i = 0, j = resultNode.children.length; i < j; i++) {
      if (hasActiveSpec(resultNode.children[i])) {
        return true;
      }
    }
  }
}

然后,在 summaryList 函数中,只需为套件运行该过滤器:

// ...
var resultNode = resultsTree.children[i];
if (resultNode.type == "suite") {
  // Don't display inactive suites
  if (!hasActiveSpec(resultNode)) {
    continue;
  }

  // var suiteListNode = ...
  // ...
}

关于JavaScript、Jasmine、隐藏禁用的 jasmine 规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24881500/

相关文章:

javascript - 学习 Jasmine - toHaveBeenTriggered 适用于触发器 ("modal"),但不适用于 modal()

javascript - 对 html2canvas 的 SVG 支持

javascript - 在 Django 应用程序中引用 JS/CSS 文件的最基本方法是什么?

javascript - 使用 for 循环迭代项目以更改弹出窗口的文本

javascript - restangular multiple promise Jasmine

angularjs - Jasmine 测试来测试 Controller 是否已定义

javascript - 将按钮添加到 jqgrid 列标题

javascript - Bootstrap 模式上的取消按钮不会清除填充的数据

javascript - 在 Jasmine 测试中为 Angular Constant 提供动态值

javascript - 错误: Unknown type: typeaheadjs while running from grunt jasmine:coverage