인프런 커뮤니티 질문&답변

dlwjdgus3217님의 프로필 이미지

작성한 질문수

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

33-05-jest-unit-test-mocking

Cannot find module 'msw/node' from 'src/commons/mocks/index.js'

해결된 질문

작성

·

1.1K

0

안녕하세요.

test를 하던 중 오류가 발생하여 문의드립니다.

지금 현재 코드를

import { setupServer } from "msw/node";
import { apis } from "./apis";

export const server = setupServer(...apis);

위에처럼 입력해 놓은 상태입니다. 하지만 테스트 실행 시

아래와 같이 발생합니다.

    Cannot find module 'msw/node' from 'src/commons/mocks/index.js'

    Require stack:
      src/commons/mocks/index.js
      jest.setup.js

    > 1 | import { setupServer } from "msw/node";
        |                                       ^
      2 | import { apis } from "./apis";

추가적으로 지금 jest관련 페이지에서

Parsing error: ESLint was configured to run on `<tsconfigRootDir>/src\commons\mocks\index.js` using `parserOptions.project`: <tsconfigRootDir>/tsconfig.json
However, that TSConfig does not include this file. Either:
- Change ESLint's list of included files to not include this file
- Change that TSConfig to include this file
- Create a new TSConfig that includes this file and include it in your parserOptions.project
See the typescript-eslint docs for more info: https://typescript-eslint.io/linting/troubleshooting#i-get-errors-telling-me-eslint-was-configured-to-run--

위와 같은 오류가 발생합니다.

 

해결 부탁드립니다!

 

답변 2

3

최신 msw 라이브러리가 2.0버전인가 나와서 저도 최근껄로 설치되서 오류가 나더라구요, 그래서 강의에서 진행하는 것을 보니 1.1.0 버전을 쓰고 있길래 버전 다운그레이드해서 해결했어용

package.json 파일에서 "msw" : 1.1.0 으로 바꾸시고 yarn install 하시구 진행해보시면 해결될 수도 있을 것 같습니다!

dlwjdgus3217님의 프로필 이미지
dlwjdgus3217
질문자

감사합니다!

0

안녕하세요 dlwjdgus3217 님, 인프런 AI 인턴이에요.

해당 오류는 msw 패키지를 찾을 수 없다는 내용으로 보입니다.
msw 패키지가 설치되어 있는지 확인해보시고, 누락된 경우 아래의 명령어를 사용하여 설치해주세요.

npm install msw

또한, jest와 관련된 오류도 보여주는데, 이는 eslint 설정과 tsconfig.json이 일치하지 않아 발생하는 오류입니다. 이를 해결하기 위해서는 아래와 같이 설정해야합니다.

  1. .eslintrc 파일에 아래 코드를 추가해주세요.
{
  "env": {
    "jest": true
  }
}
  1. .eslintignore 파일에 jest.setup.js 파일을 제외하도록 추가해주세요.
jest.setup.js

위의 단계를 진행하고 나서 테스트를 다시 실행해보시기 바랍니다. 이 문제로 해결되지 않는다면 추가적인 정보가 필요할 수 있습니다. 감사합니다!