강의

멘토링

커뮤니티

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

한창훈님의 프로필 이미지
한창훈

작성한 질문수

스프링과 JPA 기반 웹 애플리케이션 개발

회원 가입 리팩토링 및 테스트

@MockBean을 사용해서 느려지는 테스트는 어떤식으로 커버하시나요?

작성

·

323

0

스프링 컨텍스트를 한번 띄워놓고 재활용해야 속도가 느려지지 않는데, 매번 @MockBean을 하나씩 끼워넣으면 해당 테스트에서는 스프링 컨텍스트를 새로 로딩해서 많이 느려지는 것 같습니다.

그렇다고 별도의 클래스를 만들어서 @MockBean을 몰아넣자니 디테일이 좀 떨어지는것같구요.

혹시 좋은 솔루션이 있을까요?

답변 1

1

백기선님의 프로필 이미지
백기선
지식공유자

안녕하세요. 스프링 컨텍스트가 매번 다시 생성되는게 테스트 성능에 영향을 줄 수 있습니다. 그래서 가능하면 @MockBean을 쓸 때는 최대한 필요한 빈만 등록해서 테스트 할 수 있게끔 슬라이스 테스트용 애노테이션 (@WebMvcTest나 @DataJpaTest)를 쓰시거나, 아에 순수한 단위 테스트를 만드는 것도 고려해볼만 합니다.

한창훈님의 프로필 이미지
한창훈
질문자

역시 은탄환은 없나보네요....... 😭

한창훈님의 프로필 이미지
한창훈

작성한 질문수

질문하기