[英]Mocha Test Fails with AssertionError
在JUnit(Java)中,單元測試的結果是成功,失敗或錯誤。
當我嘗試使用Mocha運行測試時,我獲得了成功或斷言錯誤。
通常是為失敗測試獲取AssertionError嗎? (它不應該被稱為失敗而不是錯誤嗎?)
斷言錯誤:-1 == 2 +預期 - 實際
那么測試異步代碼呢? 當我的測試失敗時,我得到一個未捕獲的錯誤? 這是正常的嗎?
像這樣:
未捕獲的錯誤:預計200到201等於
你所描述的是摩卡的正常行為。 此代碼說明了如果您不嘗試在異步代碼中捕獲異常(甚至由斷言失敗引發異常)以及如果您想要避免未捕獲的異常消息,您可以執行的操作會發生什么:
var assert = require("assert");
it("fails with uncaught exception", function (done) {
setTimeout(function () {
assert.equal(1, 2);
done();
}, 1000);
});
it("fails with assertion error", function (done) {
setTimeout(function () {
try {
assert.equal(1, 2);
done();
}
catch (e) {
done(e);
}
}, 1000);
});
上面的代碼產生了這個輸出:
1) fails
2) fails
0 passing (2s)
2 failing
1) fails:
Uncaught AssertionError: 1 == 2
at null._onTimeout (/tmp/t2/test.js:5:16)
at Timer.listOnTimeout [as ontimeout] (timers.js:112:15)
2) fails:
AssertionError: 1 == 2
at null._onTimeout (/tmp/t2/test.js:13:20)
at Timer.listOnTimeout [as ontimeout] (timers.js:112:15)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.