use generator and co in mocha

来源:互联网 发布:茶叶网络连锁 编辑:程序博客网 时间:2024/05/30 23:10

主要的点在于当 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 实例教程>>(阮一峰)

0 0