Controller 테스트 중 불필요한 계층 간 의존성을 없애기 위해 Mockito를 사용하였다.Controller가 의존하는 Service의 로직 중 다음과 같은 로직이 있다.상품을 삭제하기 전, 상품의 ID가 존재하는지 검증하고 상품을 지우는 로직이다.이때 테스트
JPA를 사용하고, 다음과 같은 엔티티가 정의되어 있다.그리고 주문(Order)을 저장하고 조회하는 테스트를 작성했다.그리고 테스트를 실행하니, 다음과 같은 예외가 발생하며 테스트 중 하나가 실패했다.하지만 테스트를 각각 독립적으로 하나씩 실행시키면 해당 예외가 발생하
지금 진행하고 있는 프로젝트인 페스타고는 공연의 티켓팅이 핵심인 프로젝트다.티켓팅은 동시에 수많은 사용자가 몰리므로, 당연히 동시성 문제가 발생한다.따라서 동시성으로 발생하는 문제를 해결해야 한다.그리고 동시성으로 발생하는 문제를 해결하는 코드를 작성한다고 끝이 아니라
프로젝트에서 JPA를 사용하여 엔티티를 영속할 때, 연관 관계를 맺은 다른 엔티티의 @OneToMany의 Cascade를 사용하여 영속하였다.그리고 저장 시 발생하는 쿼리를 봤더니 다음과 같은 3개의 쿼리가 발생하고 있었다.여기서 문제가 되는 쿼리는 \`\`게다가 특이
개인적으로 하고 있는 사이드 프로젝트의 통합 테스트 환경에서 Testcontainers를 사용해 보기로 했다.테스트 컨테이너를 사용하면, Docker 기반의 인프라 환경을 자동으로 구성해 주므로, RDB, Redis, Kafka 같은 외부 서비스에 의존적인 코드를 더욱
평화롭게 개발하던 어느날...슬랙에 알람과 함께 다음과 같은 에러 로그가 날아왔다.해당 예외는 클라이언트 측 예외라 ERROR 로그가 발생하면 안 된다.또한 해당 예외는 ControllerAdvice에 처리하도록 했기 때문에 로그가 발생하는 것조차 이상했다.로컬에서 여