运行选定的测试时,我想隐藏禁用的 Jasmine 规范。我将进行很多测试,因此我不想在每次刷新后向下滚动以到达底部的测试。
Jasmine 中是否有任何允许的选择?我浏览了文档,但没有找到任何东西。
最佳答案
正如本期所记录的那样,这是关键设计决策。
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/