2019-9-10 Node 실행환경 바꾸기

  • node를 통해 production, test, dev 모드 등으로 개발을 한다. test코드에서 환경 분리를 하기 위해서 process.env.NODE_ENV=test로 만들어야됬다. 아무리 찾아봐도 저 부분은 나와있지만 정작 npm script에서는 어떻게 짜야되는지 나와있지 않았다.
  • pm2라는 도구도 사용해봤는데, 그거보다는 더 간결하게 cross-env를 사용했다.
npm i --save-dev cross-env

"test": "cross-env NODE_ENV=test ./node_modules/mocha/bin/mocha --require babel-register --timeout 120000 --recursive ./**/*.spec.js",
  • scipt앞에 cross-env NODE_ENV=test를 작성하니 환경이 분리됬다. 이게 왜이리 오래걸렸는지…

느낀점

  • 테스트코드에서 unit테스트가 아닌 통합테스트가 되면서 데이터베이스를 분리해야됬다. mock을 사용하기 위해 mongdo connect를 할때 환경에 따라 접속이 다르게 했고, 그 환경 분리를 하기 위해 오후 내내 시간을 썼다. 그래도 가기전에 해결이 되서 감사.
Written on September 10, 2019