मुझे आश्चर्य है कि अगर एक विशिष्ट जेस्ट परीक्षण के अंदर कंसोल त्रुटियों को अक्षम करने का एक बेहतर तरीका है (यानी, प्रत्येक परीक्षण से पहले / बाद में मूल कंसोल को पुनर्स्थापित करें )।
यहाँ मेरा वर्तमान तरीका है:
describe("Some description", () => {
let consoleSpy;
beforeEach(() => {
if (typeof consoleSpy === "function") {
consoleSpy.mockRestore();
}
});
test("Some test that should not output errors to jest console", () => {
expect.assertions(2);
consoleSpy = jest.spyOn(console, "error").mockImplementation();
// some function that uses console error
expect(someFunction).toBe("X");
expect(consoleSpy).toHaveBeenCalled();
});
test("Test that has console available", () => {
// shows up during jest watch test, just as intended
console.error("test");
});
});
क्या एक ही काम पूरा करने का एक क्लीनर तरीका है? मैं बचना चाहूंगा spyOn
, लेकिन mockRestore
केवल इसके साथ काम करना प्रतीत होता है ।
धन्यवाद!
setupTestFrameworkScriptFile
के पक्ष में पदावनत किया जाता हैsetupFilesAfterEnv
।