本文介紹了在 Nodejs 中使用 Jasmine 測(cè)試 promise 是否被解決或拒絕的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!
問(wèn)題描述
限時(shí)送ChatGPT賬號(hào)..
我知道如何在 Mocha 中做到這一點(diǎn),但想知道如何在 Jasmine 中做到這一點(diǎn).我試過(guò)這個(gè)
I know how to do it in Mocha but want to know how to do it with Jasmine. I tried this
describe('test promise with jasmine', function() {
it('expects a rejected promise', function() {
var promise = getRejectedPromise();
// return expect(promise).toBe('rejected');
return expect(promise.inspect().state).toBe('rejected');
});
});
但是,狀態(tài)總是pending
,當(dāng)然,測(cè)試失敗了.我在網(wǎng)上找不到任何可以讓它工作的例子.
However, the state is always pending
and, of course, the test fails. I couldn't find any example online that I could make it work.
有人可以幫我解決這個(gè)問(wèn)題嗎?
Can someone please help me with this?
謝謝.
推薦答案
要使用 jasmine 測(cè)試異步代碼,您應(yīng)該使用 它的異步語(yǔ)法,例如:
To test asynchronous code with jasmine you should use its async syntax, e.g.:
describe('test promise with jasmine', function(done) {
var promise = getRejectedPromise();
promise.then(function() {
// Promise is resolved
done(new Error('Promise should not be resolved'));
}, function(reason) {
// Promise is rejected
// You could check rejection reason if you want to
done(); // Success
});
});
這篇關(guān)于在 Nodejs 中使用 Jasmine 測(cè)試 promise 是否被解決或拒絕的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!
【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!