2016-08-19 48 views
0

響應狀態通過並失敗,在我的控制下。但是我看不到預期(res.body)測試通過。在瀏覽器中查看時,路由完全按照編程顯示。但用於測試瀏覽器中呈現內容的mocha/chai測試總是失敗。我究竟做錯了什麼?? 健康檢查航線代碼:chai expect(res.body)一致失敗

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(); 
      }); 

    }); 

回答

1

好吧,我想通了。我不得不安排登錄響應,然後深入瞭解,直到我得到正確響應。在我上面的同樣,它返回一個空集或null。我的代碼,往往會回答我的問題是:

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

我最初的想法是,我不得不爲目標的測試針對它的響應「體」。在這裏似乎不是這種情況。

相關問題