Jest 테스트 프레임워크에서 모듈을 자동으로 모킹하는 데 사용되는 함수
모듈의 모든 함수를 Jest 자동 모킹 시스템을 통해 가짜 함수로 대체함. 테스트 시 해당 모듈의 실제 구현을 사용하지 않고 모킹된 버전을 사용하여 테스트의 격리를 유지하고 결과를 더욱 예측 가능하게 할 수 있음.
예시:
ex) jest.mock('../product_client')
../product_client
모듈을 자동 모킹, 이 모듈의 모든 함수를 자동으로 모킹되어 테스트 할때 원래 함수 대신, 모킹된 버전이 호출됨.
주의사항:
jest.mock() 을 사용할 때 모킹된 함수의 구현이나 반환값 등을 명시적으로 설정하지 않으면 기본적으로 모든 모킹된 함수는 undefined
를 반환함. 따라서 테스트 시 특정 동작이나 반환값을 기대한다면 해당 함수의 모킹 구현을 mockImplementation()
이나 mockReturnValue()
와 같은 메서드를 사용해서 설정해야 함.
예시:
ProductClient.mockImplementation(() => {
return {
fetchItems: fetchItems
}
})