본문 바로가기
카테고리 없음

[Springboot] 회원관리 예제 - (5)회원 서비스 테스트

by hongchii 2021. 3. 27.
728x90
반응형

2021.03.27 - [Springboot] - [Springboot] 회원관리 예제 - (4)회원 서비스 개발

 

[Springboot] 회원관리 예제 - (4)회원 서비스 개발

강의 : 인프런 스프링 입문 - 코드로 배우는 스프링부트, 웹 MVC, DB 접근기술 강의 목차 (1). 비즈니스 요구사항 정리 (2). 회원 도메인과 리포지토리 만들기 (3). 회원 리포지토리 테스트 케이스 작

hong-chii.tistory.com

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

 

강의 목차

(1). 비즈니스 요구사항 정리
(2). 회원 도메인과 리포지토리 만들기
(3). 회원 리포지토리 테스트 케이스 작성
(4). 회원 서비스 개발
(5). 회원 서비스 테스트

 

 

 

 

클래스명에서 command + shift + T 를 누르면 쉽게 테스트 코드를 작성할수 있다.

Create New Test..를 누르면

 

쉽게 만들어졌다.

 

테스트 코드는 직관적으로 볼 수 있게 한글로 해도된다.

그리고 작성시에 given, when, then 으로 나눠서 작성하면 나중에 볼 때 쉽게 파악 할 수 있다.

 

테스트는 정상 flow도 중요하지만 예외 flow가 훨씬 더 중요하다.

clear를 위한 코드 추가

하지만 여기서 한가지 애매한 점이 있다.

MemberService에 있는 memberRepository와 테스트코드에 memberRepository는 다른 객체(인스턴스)다.(new로 다른 객체 생성)

같은 인스턴스를 사용할수있게 코드를 아래와 같이 바꾸는게 좋다. 

= new MemoryMemberRepository()를 지우고

command+n -> Constructor -> OK 

 

그 다음 MemberServiceTest 코드로 간다.

 

이렇게 코드를 짜면 테스트를 실행할때마다 각각 생성을 해준다.

MemoryMemberRepository 만들고 memberService에 memberRepository를 넣어서 사용한다.

 

이런것을 DI 라고 한다.

 

728x90
반응형

댓글