代码之家  ›  专栏  ›  技术社区  ›  user4445419

Mocha Express测试失败

  •  1
  • user4445419  · 技术社区  · 9 年前

    我有一个Express服务器,我正在尝试使用SuperTest进行测试。下面的测试没有通过,我不知道为什么。

    我看到响应的状态为200(在 res.status.should.equal(200) ). 为什么这个测试仍然被标记为失败,我的摩卡?

    it('Should test invoke user method', function (done) {
      supertest(app)
        .post('/save/test1/test2/test3')
        .expect(200)
        .end(function (err, res) {
          res.status.should.equal(200);
          done();
        });
    });
    
    1 回复  |  直到 9 年前
        1
  •  0
  •   Luca Bruzzone    9 年前

    你应该有一个确切地告诉你你收到了什么的输出。

    您也可以使用 https://www.getpostman.com/ (现在他们正在维护,但很快就会恢复),这对开发有很大帮助,如果你正在进行api测试,你也可以参与其中 https://github.com/apiaryio/dredd ,这完全改变了我的工作流程

    编辑:

    • Postman:一个rest客户端,它是一个chrome/FF插件,您可以使用它进行调用,并很容易地看到响应是什么样的(您可以使用curl和wget,但Postman很容易,特别是当您需要使用标头时)

    • Dredd:一个从理论上验证你的蓝图/文档的工具,看看它是否与你的服务器同步,实际上你可以做一个红绿灯的开发,先有你所有的api蓝图,然后让所有的测试通过,这样做的好处是你可以看到服务器响应的json/任何其他东西是什么,以及它与你的代码有什么不同