728x90
✅ 에러 상황
컨트롤러 단위테스트를 하던 중 No primary or single unique constructor found for interface org.springframework.data.domain.Pageable 예외가 발생했다.
그러나... MockMvcRequestBuilders.get()을 이용해 요청메시지를 만들어줄때 분명히 size, page, sort 파라미터를 지정해주었다.
만들어진 요청을 print해봐도 파라미터가 제대로 추가된 것을 볼 수 있었다.
✅ 원인
스프링부트 애플리케이션에서는 PageableHandlerMehtodArgumentResolver가 등록되어 있다.
PageableHandlerArgumentResolver가 size, page, sort 파라미터들을 보고 자동으로 Pageable 객체를 생성해서 주입해준다.
하지만 현재 테스트환경에는 PageableHandlerArgumentResolver가 등록되어 있어서 자동 변환이 이루어지지 않는다.
✅ 해결
테스트 환경에 PagealeHandlerArgumentResolver를 추가해준다.
728x90
'오류 해결' 카테고리의 다른 글
@WebMvcTest 시큐리티 설정을 완전히 제거하지 않아 생긴 오류 (0) | 2025.03.26 |
---|---|
Spring Security 사용시 h2 웹 콘솔 접근하는 방법 (0) | 2025.03.06 |
[Docker] 뭔 짓을 해도 is the docker daemon running? 오류 (2) | 2024.12.19 |
MYSQL에 한글 csv 파일 import하기 (전처리 없이!) (1) | 2024.11.14 |
MSSQL 한글 인코딩 문제 (???로 표시) (3) | 2024.11.06 |