Dandy Now!
  • [ 언어·프레임워크/Node.js ]
    Node.js + MySQL 기반 REST API 단위 테스트 실습 튜터리얼
    2025-07-26 23:27:22
    Node.js + MySQL 기반 REST API 단위 테스트 실습 튜터리얼1. 단위 테스트란?단위 테스트(Unit Test)는 애플리케이션의 가장 작은 단위(함수, 메서드 등)가 기대한 대로 동작하는지 독립적으로 검증하는 테스트이다.실제 DB, 네트워크 등 외부 시스템에 의존하지 않고, 함수의 로직만 집중적으로 테스트한다.2. 프로젝트 구조 예시myapp/ ├── controller/ │ └── products.js ├── models/ │ └── Product.js ├── db.js ├── package.json └── test/ └── unit/ └── products.test.js3. MySQL 데이터베이스 준비MySQL에서 테스트용 ..
  • [ 언어·프레임워크/Node.js ]
    Node.js + MySQL 기반 REST API 통합 테스트 완벽 튜터리얼
    2025-07-26 23:16:58
    Node.js + MySQL 기반 REST API 통합 테스트 완벽 튜터리얼1. 통합 테스트란 무엇인가? 왜 필요한가?통합 테스트(Integration Test)란, 여러 컴포넌트(예: 라우터, 컨트롤러, DB 등)가 실제 환경처럼 잘 연결되어 동작하는지 검증하는 테스트이다.단위 테스트(Unit Test)는 개별 함수나 모듈만 검증하지만, 통합 테스트는 실제 서버를 띄우고 HTTP 요청을 보내 전체 시스템의 흐름을 검증한다.필요성실제 배포 환경과 유사하게 동작하는지 미리 확인할 수 있다.라우터, 미들웨어, DB 등 여러 계층이 올바르게 연결되어 있는지 한 번에 검증할 수 있다.예외 상황(없는 데이터, 잘못된 요청 등)도 실제처럼 테스트할 수 있다.2. Node.js에서 통합 테스트 구성 방법2-1. 필요..
  • [ 언어·프레임워크/Node.js ]
    [Node.js] Jest 경로 전쟁: 복잡한 설정 대신 구조로 해결하기
    2025-07-25 21:33:46
    Jest 경로 전쟁: 복잡한 설정 대신 구조로 해결하기테스트 코드를 작성할 때, ../가 반복되는 상대 경로 문제는 개발자를 괴롭히는 오랜 숙적과 같다. 우리는 종종 이 문제를 해결하기 위해 jest.config.js의 moduleNameMapper와 같은 복잡한 설정의 세계로 뛰어들지만, 때로는 그 길이 더 큰 혼란으로 이어지기도 한다. 이 글에서는 복잡한 설정과의 사투 끝에, 파일 구조를 변경하는 단순한 발상의 전환이 어떻게 더 우아하고 안정적인 해결책이 되었는지 그 경험을 공유하고자 한다.1. 문제의 시작: 테스트 파일과 데이터의 분리프로젝트 초기에는 보통 기능 코드와 테스트 코드를 분리하여 관리한다. 예를 들어, Express 애플리케이션을 테스트하기 위해 다음과 같은 구조를 가질 수 있다.1-1..