특정 Jest 테스트 내 에서 콘솔 오류 를 비활성화 하는 더 좋은 방법이 있는지 궁금합니다 (즉, 각 테스트 전후에 원래 콘솔을 복원 ).
내 현재 접근 방식은 다음과 같습니다.
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
.