62

it如果其中一个失败,我找不到如何阻止某些部分运行的方法

我正在使用mocha-as-promised,所以代码看起来可能与往常不同

describe("remote promises", function() {
  describe("browsing", function() {
    describe("getting page", function() {
      it("should navigate to test page and check title", function() {
        this.timeout(TIMEOUT);
        return browser.get("http://admc.io/wd/test-pages/guinea-pig.html").then(function() {
          return browser.title();
        }).then(function(title) {
          return assert.ok(~title.indexOf("I am a page title - Sauce Labs"), "Wrong title!");
        });
      })
      it("submit element should be clicked1", function() {
        this.timeout(TIMEOUT);
        return browser.elementById("submit").then(function(el) {
          return browser.clickElement(el);
        }).then(function() {
            return browser["eval"]("window.location.href");
          }).then(function(location) {
            assert.ok(~location.indexOf("http://"), "Wrong location!");
          });
      })
    });
    describe("clicking submit", function() {
      it("submit element should be clicked2", function() {
        this.timeout(TIMEOUT);
        return browser.elementById("submit").then(function(el) {
          return browser.clickElement(el);
        }).then(function() {
            return browser["eval"]("window.location.href");
          }).then(function(location) {
            assert.ok(~location.indexOf("http://"), "Wrong location!");
          });
      });
    });

  });
});

我希望如果should navigate to test page and check title失败则 submit element should be clicked1应该跳过

编辑:似乎我只是让我的测试错了,在删除问题之前会等待一段时间

编辑:

正如我在评论中回复的那样——我已经在 mocha google 群组中收到了这个答案,但是还有一些我没有提到的其他限制——我正在使用 grunt-simple-mocha 并且当我检查代码时——当我没有保释选项时将选项传递给 mocha 构造函数

我找不到从命令行传递给套件实例的选项的位置,而我看到的唯一行是

suite.bail(this.bail());

这对我来说看起来很奇怪

我想我会在 mocha github 页面上打开问题,也许他们稍后会通过保释设置扩展传递的选项,或者只是解释我做错了什么以及如何以其他方式解决我的问题

编辑:现在,根据https://github.com/visionmedia/mocha/commit/f0b441ceef4998e570a794dcff951bf2330eb0c5 最新的 Mocha 有保释选项。感谢作者!

4

1 回答 1

130

摩卡支持第一次测试失败后退出,这是你想要的吗?

来自mocha --help

-b, --bail                      bail after first test failure
于 2012-12-19T19:43:12.667 回答