
엔드투엔드 테스트
Supertest, 테스트 데이터베이스, fixtures, 테스트에서의 인증, API 테스트
20 면접 질문·
Mid-Level
1NestJS 맥락에서 E2E(엔드투엔드) 테스트란 무엇인가요?
1
NestJS 맥락에서 E2E(엔드투엔드) 테스트란 무엇인가요?
답변
E2E 테스트는 HTTP 요청부터 응답까지 모든 레이어(controller, service, database)를 거치는 애플리케이션의 전체 흐름을 검증합니다. 컴포넌트를 격리하는 단위 테스트와 달리, E2E 테스트는 모든 컴포넌트의 통합이 올바르게 작동하는지 검증합니다. 이를 통해 단위 테스트가 잡아낼 수 없는 통합 버그를 발견할 수 있습니다.
2NestJS가 E2E 테스트에 권장하는 라이브러리는 무엇인가요?
2
NestJS가 E2E 테스트에 권장하는 라이브러리는 무엇인가요?
답변
Supertest는 네트워크 포트에서 서버를 시작하지 않고도 HTTP 엔드포인트를 테스트할 수 있기 때문에 NestJS에서 E2E 테스트에 권장되는 라이브러리입니다. 격리된 애플리케이션 인스턴스를 만들고 시뮬레이션된 HTTP 요청을 직접 보냅니다. 이를 통해 테스트가 더 빠르고 안정적이며 병렬 테스트 간 포트 충돌을 방지합니다.
3NestJS 테스트에서 Supertest용 HTTP 서버 인스턴스를 얻으려면 어떻게 해야 하나요?
3
NestJS 테스트에서 Supertest용 HTTP 서버 인스턴스를 얻으려면 어떻게 해야 하나요?
답변
app.getHttpServer() 메서드는 기반이 되는 HTTP 서버 인스턴스(Express 또는 Fastify)를 반환하며, 이를 Supertest에 전달하여 테스트 요청을 보낼 수 있습니다. 이 메서드는 Test.createTestingModule()로 테스트 모듈을 생성한 후 사용할 수 있습니다. 이를 통해 Supertest는 네트워크 포트에서 서버를 시작하지 않고도 서버에 직접 접근할 수 있습니다.
4
NestJS 프로젝트에서 E2E 테스트는 일반적으로 어떤 파일에 배치되나요?
5
HTTP 응답의 status code를 확인할 수 있는 Supertest 메서드는 무엇인가요?
+17 면접 질문
기타 Node.js / NestJS 면접 주제
Node.js 기초
Junior
20개 질문Node.js 코어 API
Junior
25개 질문비동기 프로그래밍
Junior
25개 질문Express.js 기초
Junior
20개 질문NestJS 기초
Junior
23개 질문REST API 설계
Junior
20개 질문검증과 DTO
Junior
20개 질문API 문서화 및 계약
Junior
20개 질문에러 처리
Junior
20개 질문단위 테스트
Junior
20개 질문작업 스케줄링
Junior
15개 질문NestJS 모듈과 DI
Mid-Level
20개 질문구성 및 환경 관리
Mid-Level
20개 질문JWT 인증
Mid-Level
25개 질문인가 및 RBAC
Mid-Level
20개 질문TypeORM을 사용한 데이터베이스
Mid-Level
30개 질문Prisma ORM
Mid-Level
25개 질문미들웨어와 인터셉터
Mid-Level
20개 질문파일 업로드
Mid-Level
15개 질문WebSockets
Mid-Level
20개 질문NestJS를 사용한 GraphQL
Mid-Level
25개 질문Redis를 사용한 캐싱
Mid-Level
20개 질문Bull을 사용한 큐
Mid-Level
20개 질문DevOps, Logging, CI/CD
Mid-Level
25개 질문Docker 및 컨테이너화
Mid-Level
25개 질문마이크로서비스
Senior
30개 질문보안 모범 사례
Senior
25개 질문성능 및 클라우드 배포
Senior
30개 질문