[Nest.js에서 Jest] Cannot find module 'src/apis/payment/entities/xxx.ts' from 'src/apis/comments/entities/yyy.entity.ts'






gcp

Jest로 테스트 코드 짜려고 하는데 계속 에러가 뜬다….

모듈을 못찾겠댄다… 도대체 왜 못찾는데…!!!!

근데 생각을 해보니.. 테스트 환경에서는 실제로는 아무것도 없는 겉껍데기만 존재하는 환경이니까..

당연히 모듈을 못찾는게 맞지않을까..? 하는 생각이 들었다.

(역시.. 왜 안되는지 곰곰히 생각을 해보는게 중요)

??

역시나, 이런경우에는 이런 엔티티들을 연결시켜주는게 중요한게 아니라

설정에서 뭔가를 해주어야 했다.






바로바로…

package.json 에서 설정해줘야하는데…!

package.json 가장 밑으로 내려가보면 가장 밑에

"jest": {
	~~~
}

라고하면서 Jest를 사용할때의 기본설정이 되어있는데,

이때 경로를 root로 설정해주어야 한다.

특히 모듈패스에… 추가지정을 해주어야 한다.

"jest": {
    "moduleFileExtensions": [
      "js",
      "json",
      "ts"
    ],
    "roots": [
      "<rootDir>"
    ],
    "modulePaths": [
      "<rootDir>"
    ],
    "moduleDirectories": [
      "node_modules"
    ],
    "testRegex": ".*\\.spec\\.ts$",
    "transform": {
      "^.+\\.(t|j)s$": "ts-jest"
    },
    "collectCoverageFrom": ["**/*.{!(module),}.(t|j)s"],
    "coverageDirectory": "../coverage",
    "testEnvironment": "node"
  }

이렇게 바꿔주면 모듈을 찾지 못했다는 에러는 사라진댜 유후 (〃´𓎟`〃)
















© 2018. by sora

Powered by sora