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 實例教程>>(阮一峰)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容