인프런 커뮤니티 질문&답변

Jinseok Han님의 프로필 이미지
Jinseok Han

작성한 질문수

스프링 시큐리티

@SpringBootTest 테스트 오류

해결된 질문

작성

·

488

0

안녕하세요. 수업 감사히 잘 들었습니다.

spring security를 적용하면 

@SpringBootTest 테스트 코드에서 아래 오류가 발생합니다.

test시 security 작용을 disable 시켜야 하는 건지 해결 방범이 궁금합니다.

Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'resourcesController':

 Unsatisfied dependency expressed through field 'methodSecurityService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException:

 Error creating bean with name 'methodSecurityService' defined in file [path\security\service\MethodSecurityService.class]:

 Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException:

 No qualifying bean of type 'org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext' available:

 expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}

답변 2

1

정수원님의 프로필 이미지
정수원
지식공유자

저의 개인적인 판단으로는 tdd 환경으로 스프링 시큐리티 테스트 하는 것을 그렇게 추천해 드리지는 않습니다.

물론 개인마다 차이가 있습니다.

tdd 는 세션이나 쿠키 생성 등 여러가지 설정에 있어서 제한 및 어려움이 있기도 하고 다양한 보안 환경을 구축하기가 쉽지 않습니다.

오류내용을 보면 의존관계에서 문제가 발생한 듯 합니다.

현재 제공해 드리는 소스가 tdd 에 맞추어서 작성된 것이 아니라서 원인에 대한 정확한 답변을 드리기가 쉽지 않네요

일단 스프링 시큐리티를 비활성화해서 진행해야 할 것 같습니다.

0

Jinseok Han님의 프로필 이미지
Jinseok Han
질문자

말씀하시는데 동의 합니다.

솔직히 application을 통채로 올리는 @SpringBootTest도 좋아하진 않습니다만...

어쨌든 강의 내용과 좀 동떨어진 질문이였네요.

답변 주셔서 감사합니다.

좋은 하루 되세요~

Jinseok Han님의 프로필 이미지
Jinseok Han

작성한 질문수

질문하기