2017-09-13 108 views
0

目前,我已經使用mochachai創建了兩個函數的測試。nodejs中的測試用例mocha,chai

他們應該根據HTTP POST/GET請求中的不同參數做出不同的響應。

但是,我不知道檢查3個測試用例的最佳做法是什麼,我希望他們會有相同的輸入。

例如,

describe('Function A', function() { 

it('should retrun 404 when receipt ID is invalid', function(done) { 
    chai.request(server) 
     .post('/generateSales/') 
     .send(validParams1) 
     .end(function(err, res){ 
      res.should.have.status(404); 
      done(); 
     }); 
}); 

it('should retrun 404 when receipt ID is invalid', function(done) { 
    chai.request(server) 
     .post('/generateSales/') 
     .send(validParams2) 
     .end(function(err, res){ 
      res.should.have.status(404); 
      done(); 
     }); 
}); 

it('should retrun 404 when receipt ID is invalid', function(done) { 
    chai.request(server) 
     .post('/generateSales/') 
     .send(validParams3) 
     .end(function(err, res){ 
      res.should.have.status(404); 
      done(); 
     }); 
}); 


}); 

什麼是測試在一個it塊中的所有PARAMS(validParams1,2,3)的正確方法? (因爲我預計它們具有相同的響應)

回答

0

由於異步問題,您不應該在it塊中調用for循環。

我找到了一個替代的解決方案,而不是使用it-each模塊

以下鏈接顯示如何處理異步測試與摩卡循環,當你想使用一個it塊內的20個API或20測試用例

https://whitfin.io/asynchronous-test-loops-with-mocha/

相關問題