본문 바로가기
javascript pure/javascript 기본

23. 자바스크립트 개발 도구와 테스트-2

by leo2114 2023. 3. 19.
반응형

#2  디버깅과 테스트 도구

디버깅과 테스트는 소프트웨어 개발에서 매우 중요한 부분입니다. 디버깅은 코드에서 발생하는 오류를 찾고 수정하는 과정이며, 테스트는 소프트웨어의 기능과 성능을 검증하는 과정입니다. 이번 섹션에서는 Node.js에서 사용할 수 있는 디버깅과 테스트 도구에 대해 알아보겠습니다.

디버깅 도구

Node.js에서 디버깅을 할 때는 기본적으로 내장된 디버거를 사용할 수 있습니다. 이 디버거는 Node.js 실행 시 --inspect 옵션을 함께 주면 Chrome 개발자 도구에서 디버깅할 수 있습니다.

 

내장된 디버거 사용하기

다음은 내장된 디버거를 사용하여 디버깅하는 방법입니다.

 

1. 디버깅하고자 하는 스크립트를 실행할 때 --inspect 옵션을 사용합니다.

node --inspect app.js

2. Chrome 브라우저에서 chrome://inspect 주소로 접속합니다.

3. "Remote Target" 섹션에서 디버깅하고자 하는 스크립트를 선택합니다.

4. "Open dedicated DevTools for Node" 버튼을 클릭하여 Chrome 개발자 도구를 엽니다.

5. 개발자 도구에서 디버깅을 수행합니다.

 

VS Code를 사용한 디버깅

VS Code를 사용하면 내장된 디버거보다 더 편리하게 디버깅할 수 있습니다. 다음은 VS Code에서 디버깅하는 방법입니다.

 

1. 디버깅하고자 하는 스크립트를 실행할 때 --inspect-brk 옵션을 사용합니다.

node --inspect-brk app.js

2. VS Code에서 디버그 패널을 엽니다.

3. "Add Configuration" 버튼을 클릭하여 launch.json 파일을 엽니다.

4. launch.json 파일에서 "configurations" 배열에 다음과 같은 설정을 추가합니다.

{
  "type": "node",
  "request": "attach",
  "name": "Attach to Remote",
  "address": "localhost",
  "port": 9229
}

5. "Run" 메뉴에서 "Start Debugging"을 선택합니다.

6. VS Code에서 디버깅을 수행합니다.

테스트 도구

테스트는 개발 과정에서 필수적인 단계입니다. Node.js에서는 다양한 테스트 도구를 제공합니다. 여기서는 가장 대표적인 두 가지 도구인 Mocha와 Jest에 대해 간략히 소개하겠습니다.

 

Mocha

ocha는 Node.js에서 가장 많이 사용되는 테스트 프레임워크 중 하나입니다. Mocha는 describe, it, beforeEach 등의 함수를 제공하여 테스트 코드를 작성할 때 유용하게 사용할 수 있습니다.

Mocha를 설치하려면 다음과 같이 명령을 실행합니다.

npm install mocha --save-dev

테스트를 실행하려면 다음과 같이 명령을 실행합니다.

npm run test

위와 같이 명령을 실행하면 test 스크립트에서 mocha 명령어를 실행하도록 설정하면 됩니다.

 

Jest

Jest는 Facebook에서 만든 JavaScript 테스트 프레임워크입니다. Jest는 Mocha보다 더 다양한 기능을 제공합니다. 예를 들어 snapshot testing이나 mocking 등의 기능을 사용할 수 있습니다.

Jest를 설치하려면 다음과 같이 명령을 실행합니다.

npm install jest --save-dev

테스트를 실행하려면 다음과 같이 명령을 실행합니다.

npm run test

위와 같이 명령을 실행하면 test 스크립트에서 jest 명령어를 실행하도록 설정하면 됩니다.

 

테스트 커버리지

코드의 테스트 커버리지를 측정할 수 있는 도구도 있습니다. 대표적인 도구로는 Istanbul이 있습니다.

Istanbul을 설치하려면 다음과 같이 명령을 실행합니다.

npm install nyc --save-dev

테스트를 실행하면 nyc 명령어로 테스트를 실행하면서 테스트 커버리지를 측정할 수 있습니다.

nyc npm run test

테스트 결과는 coverage 폴더에 저장됩니다. index.html 파일을 열어보면 테스트 커버리지를 확인할 수 있습니다.

결론

위에서는 Node.js에서 개발할 때 필요한 도구와 라이브러리에 대해 간략하게 소개해보았습니다. Node.js는 다양한 라이브러리와 도구가 제공되므로 개발자는 필요에 따라 적절한 라이브러리를 사용해서 개발, 디버깅, 테스트를 할 수 있습니다.

반응형