728x90 반응형 전체 글372 TestCode: 유닛 테스트 | Jest - 비동기 코드 테스트 비동기 코드를 테스트를 할 경우 테스트 중인 코드의 완료 시점을 알아야 한다 Jest 에서는 여러 방법으로 비동기 코드의 테스트 완료 시점을 알 수 있다 promise 테스트에서 promise 를 반환하면 Jest 는 해당 promise 가 해결될 때까지 기다린다 fetching 되어야하는 response data 가 문자열 peanut butter 라고 가정하면 다음과 같이 코드를 작성할 수 있다 test('the data is peanut butter', () => { return fetchData().then(data => { expect(data).toBe('peanut butter'); }); }); async / await 테스트에서 async/await 문법을 사.. 2023. 7. 14. TestCode: 유닛 테스트 | Jest - Mock Names 로 테스트 함수 식별 jest.fn() 사용 시 선택적으로 테스트 오류 출력 대신 모의 함수의 이름을 제공할 수 있다 .mockName() 을 사용하여 테스트 출력에서 오류를 보고하는 모의 함수를 빠르게 식별할 수 있다 const myMockFn = jest .fn() .mockReturnValue('default') .mockImplementation(scalar => 42 + scalar) .mockName('add42'); 2023. 7. 14. TestCode: 유닛 테스트 | Jest - Mock Implementations 로 복잡한 동작 모의 테스트 모의 구현 jset.fn 은 모의 함수 또는 메서드를 mockImplementationOnce 를 사용하여 수행할 수있다 mockImplementationOnce 메서드는 다른 모듈에서 생성된 모의 함수의 기본 구현을 정의해야 할 때 유용하다 const myMockFn = jest.fn(cb => cb(null, true)); myMockFn((err, val) => console.log(val)); // > true // foo export function () { // some implementation; }; // test jest.mock('../foo'); // this happens automatically with automocking import foo from '../foo' // foo.. 2023. 7. 13. TestCode: 유닛 테스트 | Jest - Mocking Partials 로 모듈의 일부만 모의 테스트 Mocking Partials 모듈의 일부만 mocking 하여 테스트 할 수 있다 // foo-bar-baz export const foo = 'foo'; export const bar = () => 'bar'; export default () => 'baz'; import defaultExport, {bar, foo} from '../foo-bar-baz'; jest.mock('../foo-bar-baz', () => { const originalModule = jest.requireActual('../foo-bar-baz'); //Mock the default export and named export 'foo' return { __esModule: true, ...originalModule, de.. 2023. 7. 13. 이전 1 2 3 4 5 6 ··· 93 다음 728x90 반응형