Mocking 하기
API 를 그냥 사용하면서 테스트 하면 3가지 문제점이있다.
Request 비용이 크다
느리다
테스트가 외부요인에 의존하게 된다.
따라서 테스트에서 사용하는 API 는 isolation 하게 만들어야한다. 바로 Mocking 하는것. 간단히 더미데이터를 보내준다고 생각하면된다.
모킹하는 순서는 아래와 같다.
우선
src
폴더에__mocks__
이름을 갖는 폴더를 만들어주자.폴더의 이름 규칙은 매우 중요하다!!
비동기 처리 코드를 파일 이름으로 그대로 사용하자.
예를 들면
axios
로 비동기 처리를 하면axios.js
파일을 만들어준다.
export default 할 객체를 만든다.
아래처럼 코딩해주자
jest.fn().mockResolvedValue
안에 원하는 데이터를 넣으면 된다. 참고로 파일 구조는 아래와같다.
그리고 하나 더 해줘야할 것이, mock
리셋을 매번해줘야한다. 해주지 않으면 에러가 발생. 아직 원인은 잘 모르겠다.
Last updated