我找不到一种方法,如果其中一个失败了,如何阻止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次失败

编辑:

EDIT:

正如我在 comments 中回答的那样——我已经在mocha google Group中收到了这个答案,但还有一些我没有提到的限制——我使用grunt simple mocha,并且我判断了代码——当我将选项传递给mocha constructor时,没有保释选项

我没有找到命令行中的选项被传递到Suite实例的位置,我看到的唯一一行可能是

suite.bail(this.bail());

这对我来说很奇怪

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

EDIT: and now, according to 100 latest Mocha have bail option from the box. Thanks to authors!

推荐答案

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

mocha --help开始:

-b, --bail                      bail after first test failure

Node.js相关问答推荐

无法从ejs Web应用程序中的正文中提取数据

如何使用MongoDB在Node.js 中向数组中添加项?

如何在RavenDB中执行JS索引?

MongooseError[MissingSchemaError]:尚未为模型注册架构

如何创建具有不同对象类型的数组类型

当 Got 包因错误 JSON 崩溃时如何获取响应文本?

Google App Engine 突然不允许我部署我的 node.js 应用程序

为什么后端开发需要单独的服务器?

在 nodejs 中使用 multer 上传文件返回未定义的 req.file 和空的 req.body

使用`useLocalStorage`和`useDebounce`时如何解决Next.js中的react-hydration-error

try 在 Heroku 中部署 PRN 应用程序并获得 404

使用 .pipe(res) 向客户端发送音频不允许您搜索?

如果我使用像 express 这样的 node 服务器,是否需要 webpack-dev-server

制作一个接受命令行参数的脚本

Node.js + Express + Handlebars.js + 局部视图

将 myproject/.npmrc 与注册表一起使用

无法获取 CSS 文件

npm WARN 不推荐使用 graceful-fs@3.0.8:graceful-fs 版本 3

node.js 找不到模块mongodb

如何断言不为空?