Spring 컨텍스트 캐싱 오해, 소멸과 누적 동작 실험
·
📒 Java & Spring/Spring
들어가며festabook 프로젝트 테스트 코드 리팩토링을 진행하면서 @SpringBootTest 사용으로 인한 Spring 컨텍스트가 총 9번 로드되었다. 이는 컨텍스트가 새로 띄워지며 전체 실행 시간이 증가하는 원인 중 하나였다. 개선 방법은 어떤 이유로 로드되는지 구체적인 원인을 찾고 리팩토링하면 되지만, 막상 생각해 보니 실제로 동작하는 방식이나 어떤 식으로 캐시가 소멸하고 누적하는지 모르고 있었다. 이전까지의 가추한 테스트 환경 Spring 컨텍스트 동작 방식은 실행 초기에 Bean 설정이 동일한 그룹끼리 묶어,컨텍스트 생성테스트 실행소멸과정을 반복한다고 예상했다. 즉, 순차적으로 생성과 소멸하는 형태로 기대했다. 하지만 AI와 공식문서 자료를 흝어보니, Spring 컨텍스트는 테스트 종료 시점까..