只需放下
.then(done);并替换
function(done)为
function()
您正在返回一个Promise,因此如错误消息中所述,调用done是多余的
在较旧的版本中,必须使用回调,以防出现类似的异步方法
it ('returns async', function(done) { callAsync() .then(function(result) { assert.ok(result); done(); });})现在,您可以选择返回诺言
it ('returns async', function() { return new Promise(function (resolve) { callAsync() .then(function(result) { assert.ok(result); resolve(); }); });})但是同时使用两者会产生误导作用(例如,请参见https://github.com/mochajs/mocha/issues/2407)



