TIL - 2023/05/02

Hoony·2023년 5월 2일
0

Daily

목록 보기
16/30

💼 오늘 작업 내용

1. 세모체 개발

  • Member service test 작성
  • MemberCategory service test 작성
  • EC2 size upgrade (memory & storage)

2. Velog 기술 블로그 게시

  • EC2 Swap memory 관련 게시글 작성 및 게시 (ChatGPT를 적극 활용하자!)

💡 새로 알게된 점

1. BeforeAll with Transaction Rollback

세모체 프로젝트를 진행하던 중에 회원 생성 전에 카테고리를 미리 생성해줘야 하는 일이 있었다.

회원 서비스를 테스트를 하기 위해서 매 테스트마다 계속 카테고리를 생성하는 게 효율적이지 않다고 생각해서, 클래스 시작할 때 한번 실행되는 BeforeAll를 사용하기로 했다.

하지만 BeforeAll은 static하게 적용되므로 이는 Transaction 범위에서 벗어나 Transaction Rollback 대상이 되지 않았다. 따라서 테스트가 끝난 뒤에도, 테스트 카테고리가 남아있는 오류를 발견했다.

⇒ 결국 다시 BeforeEach를 사용했다. 찾아보니까 BeforeAll 보다는 다들 비효율적이더라도 테스트 환경을 전부 통일시키기 위해 BeforeEach를 사용하는 것 같다.

@BeforeAll and @Transaction are not working - changes on db side are not rollbacked

profile
Just Do it!

0개의 댓글