如何在测试失败后让jasmine.js停止?

时间:2013-02-04 03:27:09

标签: javascript tdd jasmine

我希望跑步者在第一次失败后停止,而不是运行所有测试。

2 个答案:

答案 0 :(得分:5)

这是一个黑客,但你可以通过在第一次测试之前插入这个脚本来做到这一点;

<script type="text/javascript">
// after every test has run
afterEach(function () {
  // check if any have failed
  if(this.results_.failedCount > 0) {
    // if so, change the function which should move to the next test
    jasmine.Queue.prototype.next_ = function () {
      // to instead skip to the end
      this.onComplete();
    }
  }
});
</script>

Jasmine在申请时的最新提交是https://github.com/pivotal/jasmine/commit/8b02bf731b193e135ccb486e99b3ecd7165bf95c

答案 1 :(得分:0)

这是一个非常受欢迎的茉莉花项目功能请求: https://github.com/jasmine/jasmine/issues/414

看起来有兴趣实现它,但它已经开放很长一段时间,所以谁知道什么时候可能会被释放。或者,Mocha使用-b / - bail选项实现此功能:https://mochajs.org/#usage。它的api与Jasmine非常相似,所以你可能需要考虑进行切换。