不知何故,我無法爲相對非常簡單的函數編寫Mocha JS測試。 JavaScript源文件看起來像這樣爲使用setTimeout的異步函數編寫摩卡測試()
exports.cb = function() {
console.log("The function is called after 3 seconds");
}
exports.testfn = function(cb) {
setTimeout(cb, 3000);
}
而作爲
describe('Main Test', function(){
it('A callback Tests', function(done){
asn.testfn(asn.cb);
done();
});
});
我現在遇到2個問題的測試代碼編寫。
-
- 測試代碼與DONE()
-
- 如果我不叫做(),則該函數被調用,但立即結束測試,因爲它預期調用完成()用於異步功能
我看着單證,但不知道如何CA失敗ñ完成。
我可以使用承諾編寫測試,它工作正常。但對於我們需要使用setTimeout的場景,它將如何完成?
你想要測試什麼? 'testfn'或'cb'? –