【发布时间】:2015-04-26 14:34:02
【问题描述】:
我应该如何使用 mocha 和 chai 测试我的承诺是否失败?
我很困惑,因为我最初认为我应该使用“mocha-as-promised”,但那 包现在已弃用(我使用的是 mocha 2.1.0),建议 只需使用现在内置于 mocha 中的 Promise 测试。 见:https://github.com/domenic/mocha-as-promised
另一篇文章建议取消 it() 回调 - 不知道为什么,因为我理解 传入“完成”参数是表示测试已完成的方式 被异步测试。 见:How do I properly test promises with mocha and chai?
无论如何,我已经尝试将我的问题简化为以下代码 - 请帮助我修改它,以便我可以测试我的承诺确实失败了。
it.only("do something (negative test)", function (done) {
var Q = require('q');
function makePromise() {
var deferred = Q.defer();
deferred.reject(Error('fail'));
return deferred.promise;
};
makePromise()
.then(done, done);
});
【问题讨论】:
标签: javascript node.js promise mocha.js