2012-11-06 86 views
1

我用mocha來測試我的nodejs代碼,並且測試運行正常,但是當我使用mocha test.js來運行測試時,似乎我傳遞給describe的字符串沒有顯示。摩卡正確運行,但顯示未定義

的代碼如下:

var assert = require("should"); 
describe("FrontEndTest", function(){ 
    describe('websocket establish connection', function(){ 
     it('should establish connection correctly', function(done){ 
      var res; 
      var wsClient = create_ws_client('ws://127.0.0.1:9876','brain_burst'); 
      wsClient.on('connect', function(connection){ 
       res = true; 
       res.should.be.true; 
       done(); 
      }); 
      wsClient.on('connectFailed', function(error){ 
       res = false; 
       res.should.be.true; 
       done(); 
      }); 
      console.log(res); 
     }); 
     it('should disconnected by server.(also, that may crash server if there is not a protocol validation)', function(done){ 
      var res; 
      var wsClient = create_ws_client('ws://127.0.0.1:9876'); 
      wsClient.on('connect', function(connection){ 
       res = true; 
       res.should.be.false; 
       done(); 
      }); 
      wsClient.on('connectFailed', function(error){ 
       res = false; 
       res.should.be.false; 
       done(); 
      }); 
     }); 
    }); 
}); 

mocha命令顯示了結果:

未定義..

✔2測試完成(68毫秒)

爲什麼它顯示undefined,因爲我已經傳遞一個字符串?

回答

2

是不是下面一行導致它?

console.log(res); 
+1

是的,這是因爲這個輸出哪個變量沒有賦值給一個值。謝謝,朋友。 – bxshi

+0

不客氣的朋友。 – Pickels

相關問題