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

jadenswith님의 프로필 이미지
jadenswith

작성한 질문수

스프링 핵심 원리 - 기본편

관심사의 분리

MemberServiceTest에서 MembeService를 AppConfig에서 꺼내기 애매한 이유

작성

·

336

·

수정됨

1

24:18 쯤 MemberServiceTest.java 코드 작성 중에

  1. MembeService를 AppConfig에서 꺼내기 애매하다고 하셨는데 그 이유가 궁금합니다!

  2. @BeforeEach로 각 테스트마다 AppConfig에서 MembeService를 생성해주는게 왜 좋은지 질문드립니다!

 

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

MemberServiceTest에서 MemberService를 AppConfig에서 꺼내는 이유는 DI(Dependency Injection)을 이용하여 의존성을 낮추기 위한 것입니다. DI는 객체 간의 의존성을 약하게 해주며 코드의 유지보수성과 확장성을 높여줍니다.

매번 @BeforeEach마다 AppConfig에서 MemberService를 생성해주는 이유는 각 테스트마다 새로운 MemberService 객체를 생성해 의존성을 분리하기 위해서입니다. 특히 다른 테스트에서 영향을 받지 않으므로 격리된 테스트를 작성할 수 있습니다.

이렇게 격리된 테스트를 작성하여 하나의 테스트가 다른 테스트나 객체에 영향을 주는 상황을 방지할 수 있습니다.

감사합니다!

jadenswith님의 프로필 이미지
jadenswith

작성한 질문수

질문하기