인프런 커뮤니티 질문&답변

m s님의 프로필 이미지
m s

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

@PostConstruct 테스트 중일때 제외

해결된 질문

작성

·

574

0

@PostConstruct가 있는 빈을 테스트 중일때 제외 시키고 싶은데 어떻게 해야 할까요.

저 샘플 데이터 때문에 테스트가 이상하게 작동합니다 ㅠㅠ

-------------------------------------------------------------

고민하다가 @SpringBootApplication 어노테이션이 달린 클래스를 하나 더 만들어서 베이스 패키지를 다르게 설정해서

@PostConstruct가 있는 빈을 제외 시켰습니다 그리고 이 클래스(@SpringBootApplication 어노테이션이 달린 다른 클래스)를

Test 클래스에 @SpringBoot(classes = 클래스 이름.class)로 전부 설정 했습니다.

이 방법이 옳은 방법일까요?? 

답변 2

1

m s님의 프로필 이미지
m s
질문자

감사합니다 찾아서 수정하였더니 원하는 결과를 얻을수 있었습니다!

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. m s님

@PostConstruct는 스프링 빈의 기본 동작이기 때문에 제외할 수 없습니다.

대신에 스프링부트 프로파일 기능을 사용해서 해당 빈이 테스트인 경우에 빈으로 등록되지 않도록 설정하면 원하시는 기능을 깔끔하게 구현할 수 있습니다^^

spring boot profile로 검색해보시면 자료가 정말 많아서, 원하는 결과를 찾으실 수 있을거에요^^

m s님의 프로필 이미지
m s

작성한 질문수

질문하기