Ich frage mich, ob es ein besserer Weg, um disable Konsole Fehler istinnerhalb ein spezifischer Jest Test (dh Wiederherstellung die ursprünglichen Konsole vor/nach jedem Test).Jest: Bessere Weise Konsole im Gerät zu deaktivieren testet
Hier ist mein aktueller Ansatz:
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");
});
});
Gibt es einen sauberen Weg, um die gleiche Sache zu vollbringen? Ich möchte spyOn
vermeiden, aber mockRestore
scheint nur damit zu arbeiten.
Danke!
Vielen Dank für die Informationen zu diesem Thema. Es macht Sinn :) Ich war auf der Suche nach einer Möglichkeit, es nur in einem bestimmten Test so zu machen, ohne es wiederherstellen zu müssen (ich dachte zunächst, dass das das Verhalten standardmäßig war), aber ich denke bevorEs macht den Trick. – Apidcloud