🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

@SpringBootTest 테스트 오류

21.02.24 12:47 작성 조회수 413

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

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

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

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

답변 주셔서 감사합니다.

좋은 하루 되세요~

채널톡 아이콘