반응형
음
나 통합테스트 안짜봤구나
공부 고!
JUnit5 쓸 것임
개념
- @SpringBootTest : 모든 스프링 빈을 로드(스캔&등록)함. application context 를 생성하여 테스트 실행
- 운영환경과 가장 유사한 테스트 가능
- 옵션
- classes : 해당 클래스만 빈으로 등록(모든 빈 등록x)
- properties, value : 같은 속성. @Value 에 들어가는환경변수 값 주입
- webEnvironment : application context 관련 설정
- MOCK : 기본값. application context 를 생성하지만 mock 환경으로 제공하므로 내장서버(tomcat) 실행되지 않음
- RANDOM_PORT : 실제 서블릿환경 제공. application context 생성. 내장서버 실행. 사용되지 않는 랜덤 포트를 listen 함
- DEFINED_PORT : 실제 서블릿환경 제공. 웹 기반의 application context 생성. 내장서버 실행. 지정해준 포트를 listen 함
- NONE : 기본적인 application context 를 로드[?]. 서블릿 환경 제공 안함
- SpringBootTest.WebEnvironment. ~
- @ActiveProfiles : 테스트 시 사용할 profile 지정 가능 (yml파일도 이 설정 따라감)
- @Transactional : 함께 사용 시 테스트 후 롤백됨됨
테스트 방식
- @AutoConfigureMockMvc
- MockMvc 객체 사용해 테스트
- 테스트 후 롤백 가능
- TestRestTemplate
- 클라이언트 관점으로 테스트하는 것과 동일
- 롤백 안됨
- RestTemplate 의 테스트 버전 [?]
- 둘다 사용하지 않고 그냥 service, repository 메서드 사용
→ 이건 안할 듯
아직 공부 ing..
반응형
'TIL' 카테고리의 다른 글
[설계 문서] RUSH Logistic - AI 기반 배송 소요시간 예측 물류 시스템 (MSA) (1) | 2024.12.06 |
---|---|
[TIL] 분산 추적 (Spring Cloud Sleuth) & 로깅 (Zipkin) & 이벤트 드리븐 아키텍처 및 스트림 처리 (0) | 2024.11.25 |
[TIL] MSA - 서킷 브레이커 (Resilience4j) (1) | 2024.11.22 |
[TIL] 24/11/15 QueryDSL 은 누구냐 (2) | 2024.11.15 |
[TIL] 24/11/12 TS : 에러는 앞뒤상황을 보자 (0) | 2024.11.12 |