[Spring] @SpringBootTest에서 환경이 다른 여러 테스트 실행 시 DDL을 여러번 실행하는 오류 트러블 슈팅하기
·
Spring/기타
❌ 문제 상황 테스트 시에 각각 개별 테스트는 통과했지만, 모든 테스트를 한 번에 돌리니 오류가 발생했다. 대충 요약하면, 이미 DB에 테이블이 초기화가 되어 있는데 DDL을 다시 재실행해서 테이블을 생성하려고 하니 오류가 발생한 것이다. 왜 이런 상황이 발생하는 것일까? 엄청 많이 파봤지만, 문제가 발생하는 정확한 원인을 찾지 못해서 깊게 파보면서 대충 예상해본 원인을 말해보겠다! (그래서 틀릴 수도 있다 ㅠㅠ) 🎯 @SpringBootTest의 ApplicationContext 생성 스프링에서는 @SpringBootTest을 실행하면 ApplicationContext를 생성해서 모든 스프링 빈들을 등록한다. 이때, 모든 테스트를 돌릴 때 @SpringBootTest를 실행할 때마다 Applicati..