chai Expect(res.body) 始终失败

问题描述 投票:0回答:1

响应状态通过和失败都在我的控制之下。但我看不到期望(res.body)测试能够通过。在浏览器中查看时,路线完全按照编程显示。但是用于测试浏览器中呈现内容的 mocha/chai 测试总是失败。我究竟做错了什么?? 健康检查路线代码:

import express from 'express';
const router = express.Router();   // eslint-disable-line new cap
// GET /health-check - checking for basic server reaction
router.get('/health-check', (req, res) =>
    res.status(200).send('CONGRATS')
);
export default router;

摩卡测试:

it('should return 200 and res.body of OK', (done) => {
        request(app)
            .get('/api/health-check')
            .expect(200)
            .end(function(err, res) {
                if(err)
                    return done(err);
                expect(res.body).to.equal('CONGRATS');
                return done();
            });

    });
express mocha.js chai
1个回答
1
投票

好吧,我明白了。我必须控制台记录响应,然后深入研究,直到它正确响应为止。在上面的示例中,它返回一个空集或 null。我倾向于回答我的问题的代码是:

.end(function(err, res) {
      if(err)
         return done(err);
      console.log(res.text);
      expect(res.text).to.equal('CONGRATS');
      return done();

我最初的想法是我必须针对响应的“.body”来对其进行测试。这里似乎不是这种情况。

© www.soinside.com 2019 - 2024. All rights reserved.