🤔 팀프로젝트 중 문제점 발견

  • 로컬 혹은 테스트 환경에서 AWS S3에 이미지 파일을 업로드 기능을 테스트가 필요한 상황이였습니다.
    그런데 이 때마다 AWS S3 버킷에 이미지 파일이 업로드는 문제가 발생했습니다.
    => 테스트마다 AWS S3 버킷에 이미지 업로드 시 비용 발생 위험
    => 더미 이미지 파일이 업로드 되는 문제 발생해서 해당 파일을 삭제 할 때 번거로움 발생

 

 

이 문제를 개선하기 위해 찾아본 결과 S3를 Mock 해주는 방법을 발견하게 되었습니다.

  • 로컬에 인메모리 형태로 S3 Mock 서버를 띄우기
  • 파일을 업로드 할 때 영속성이 없는 휘발성 개념

 

 

 

😁 해결 과정

 

1. build.gradle 외부 의존성(dependencies) 추가

 

 

 

 

 

 

2. S3MockConfig.java

 

 

 

 

 

3. 실제 테스트 코드에서 S3MockConfig @Import 어노테이션 추가

  • 위와 같이 4번째 줄에 있는 @Import(S3MockConfig.class)를 추가해 주면 됩니다.
  • Mock이미지 파일을 업로드 하는 테스트 클래스에 추가를 해주시면, 실제 AWS S3에 이미지가 업로드가 안됩니다.

 

 

 

 

참고한 링크들

 

 

 

 

반응형

+ Recent posts