docs(coupon): 캔 쿠폰 OSIV 회귀 테스트 계획을 문서화한다

This commit is contained in:
2026-07-12 21:16:58 +09:00
parent cd3fc00809
commit 729e3e8c45
2 changed files with 54 additions and 0 deletions

View File

@@ -0,0 +1,24 @@
# 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` 테스트 설정을 유지한다.
- 검증 범위는 캔 쿠폰 사용 실제 호출 경로로 제한한다.