“‘react’ 모듈을 ‘pure.js’에서 찾을 수 없음” Jest 에러를 React-Test-Renderer 설치로 해결하기

‘pure.js’에서 ‘react’ 모듈을 찾을 수 없습니다. package.json에서 yarn test를 실행할 때, 다음과 같은 오류가 발생할 수 있습니다: 'pure.js'에서 'react' 모듈을 찾을 수 없습니다. 하지만 Jest는 다음을 찾았습니다: './pure.js' import 할 때 파일 확장자를 포함하거나 'moduleFileExtensions'을(를) …

title_thumbnail(

‘pure.js’에서 ‘react’ 모듈을 찾을 수 없습니다.

package.json에서 yarn test를 실행할 때, 다음과 같은 오류가 발생할 수 있습니다:

'pure.js'에서 'react' 모듈을 찾을 수 없습니다.

하지만 Jest는 다음을 찾았습니다:
    './pure.js'

import 할 때 파일 확장자를 포함하거나 'moduleFileExtensions'을(를) 업데이트하는 것이 좋을 수 있습니다. 현재 'moduleFileExtensions'은(는) ['web.js', 'js', 'web.ts', 'ts', 'web.tsx', 'tsx', 'json', 'web.jsx', 'jsx', 'node'] 입니다.

참조: <a href="https://jestjs.io/docs/en/configuration#modulefileextensions-array-string">https://jestjs.io/docs/en/configuration#modulefileextensions-array-string</a>

  at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:259:17)
  at Object.<anonymous> (../../node_modules/@testing-library/react/dist/pure.js:28:37)

가능한 해결 방법:

해결 방법 1: react-test-renderer 설치하기

이 문제가 발생하면 가능한 해결 방법 중 하나는 “react-test-renderer” 패키지를 설치하는 것입니다. 이 패키지는 React 컴포넌트를 렌더링하고 결과를 확인하는 API를 제공합니다.

npm install react-test-renderer --save

package.json에 종속성으로 추가하는 것을 잊지 마세요:


"dependencies": {
  "react-test-renderer": "^16.13.1"
}

해결 방법 2: package.json 확인하기

Jest가 ‘react’를 찾을 수 없는 경우, ‘react’가 설치되지 않았거나 가장 가까운 package.json 파일에 ‘react’가 종속성으로 나열되어 있지 않을 수 있습니다. package.json 파일에 ‘react’가 있는지 확인하세요.

해결 방법 3: 버전 호환성

‘@testing-library/react’의 새 버전을 사용하는 경우 현재 React 버전과 호환되지 않을 수 있습니다. ‘@testing-library/react’의 더 낮은 버전, 예를 들어 12.1.2 (또는 12.x)를 설치해 보세요.

모노레포 프로젝트의 경우, 모든 package.json 파일을 확인하고 ‘@testing-library/react’와 ‘react’의 버전이 호환되는지 확인하세요.

이러한 해결 방법을 따르면 ‘yarn test’를 실행할 때 ‘pure.js’에서 ‘react’ 모듈을 찾을 수 없는 오류를 해결할 수 있습니다.

테스트를 원활하게 실행하려면 종속성, package.json 파일 및 버전 호환성을 항상 두 번 확인하세요.

참고 자료 : 

reactjs

Leave a Comment