Files
sodalive-backend-spring-boot/docs/20260712_캔쿠폰_OSIV회귀테스트보강/prd.md

1.4 KiB

PRD: 캔 쿠폰 OSIV 회귀 테스트 보강

1. Overview

CanCouponService.useCanCoupon()spring.jpa.open-in-view=false 환경에서도 실제 Spring 호출 경로에서 lazy 초기화 예외 없이 동작하는지 검증하는 통합 테스트를 추가한다.

2. Problem

  • 기존 단위 테스트는 @Transactional 애노테이션 존재만 확인한다.
  • 실제 DB 엔티티, Spring 트랜잭션 프록시, lazy 연관 접근이 함께 동작하는지는 검증하지 못한다.
  • Member.auth lazy 연관 접근이 다시 트랜잭션 밖에서 실행되면 LazyInitializationException 회귀가 발생할 수 있다.

3. Goals

  • 트랜잭션 없는 테스트 메서드에서 Spring 빈 CanCouponService.useCanCoupon()를 호출한다.
  • 인증된 회원의 member.auth lazy 연관을 포함한 실제 쿠폰 사용 경로가 예외 없이 완료됨을 검증한다.
  • 쿠폰 사용 후 회원 보상 캔과 쿠폰 사용 회원이 저장됐는지 확인한다.

4. Non-Goals

  • 공개 API 스키마 변경은 하지 않는다.
  • 쿠폰 사용 정책이나 충전 정책 로직은 변경하지 않는다.
  • 전체 OSIV 회귀 테스트를 재구성하지 않는다.

5. Technical Constraints

  • 기존 Kotlin/Spring Boot 테스트 스타일을 따른다.
  • spring.jpa.open-in-view=false 테스트 설정을 유지한다.
  • 검증 범위는 캔 쿠폰 사용 실제 호출 경로로 제한한다.