use generator and co in mocha

主要的點在於當 it() 函數的回調函數帶有done參數,mocha會等到回調函數裏面出 done 或者或者超時才完成一條測試。同時因爲每個測試用例最多執行2000毫秒,所以要面對需要很長時間的測試,需要通過設置 -t 來修改最長時間(暫時沒有更好的方法)

  it('option is empty', function(done) {
    ...
    done()//結束一條測試
  });

例子

  describe('runBash', function() {
    it('option is Sync', function(done) {
      var instructionList = ['echo "one"', 'echo "two"'];
      var option = {
        webRoot: '../fake-natoo'
      };
      co(function*(done) {
        var errCode = yield runBash(instructionList, option);
        expect(errCode).to.be.equal(null);
        done();//完成測試
      }.call(this, done));//傳入done
    });
  });

ps

Mocha默認每個測試用例最多執行2000毫秒(可以通過-t來調整)
Mocha默認會高亮顯示超過75毫秒的測試用例(可以通過-s來調整)
<<測試框架 Mocha 實例教程>>(阮一峯)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章