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

Daewon Kang님의 프로필 이미지
Daewon Kang

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

회원 서비스 테스트

@RequiredArgsConstructor 로 의존성 주입시, 테스트 코드 서비스 생성에러

작성

·

200

1

MemeberService에서 @RequiredArgsConstructor로 MemberRepository 주입시, 테스트 코드에서 MemeberService 생성시 파라미터를 받는데, 강의에서 new로 생성하였을 때와 무슨차이인지가 궁금합니다 ㅠㅠ

 

아래와 같이 코드를 작성하였습니다.

 

@Service
@RequiredArgsConstructor
@Slf4j
public class MemberService {
private final MemberRepository memberRepository;
...

}

class MemberServiceTest {

// command + shift + t 테스트 코드 껍데기 자동생성...

 

MemberService memberService = new MemberService(new MemoryMemberRepository());

    @Test

    void join() {

    }

 

    @Test

    void findMembers() {

    }

 

    @Test

    void findOne() {

    }

}

 

 

답변 1

0

안녕하세요. Daewon Kang님, 공식 서포터즈 David입니다.

@RequiredArgsConstructor가 어떤 역할을 하는지 검색하셔서 학습해주세요.

강의 내 MemberService는 Repository 객체를 내부에서 생성하고 있습니다.

내부에서 객체를 생성하는 것과 생성자의 파라미터를 통해 외부에서 객체를 주입 받는 것의 차이를 고민해보시면 좋을 것 같습니다.

감사합니다.

Daewon Kang님의 프로필 이미지
Daewon Kang

작성한 질문수

질문하기