[학습 포인트]💡 MockMvc 컨트롤러 단위 테스트 시 인증정보 부재
·
프로젝트 트러블 슈팅 및 몰랐던점 정리/CommunityAPI
SpringSecurity를 사용하는 프로젝트에서 만약 Contrller의 단위 테스트 작업을 진행할 경우, 사용자의 인증정보가 필요하게 될 것이다. 해당 인증정보를 어떻게 Mocking하는지에 대해서 알아보자문제원인MockMvc로 Controller Layer 단위 테스트시에 SpringSecurity가 활성화된 상태에서 MockMvc.perform() 호출 시 인증 정보가 주입되지 않으면 기본적으로 403 Forbidden 오류가 발생한다.TestingAuthenticationToken 이나 커스텀 토큰으로 인증 객체 생성시에 필요한 권한 정보가 설정되지 않으면 Security 인가 과정이 실패한다.해결 방안@WithMockUser 또는 SecurityMockMvcRequestPostProcessor..