@Spy
-
이번에는 service 영역에 대한 테스트를 처리해보자. @Service Layer Test @Service Layer@Service Layer는 통상 @Repository에 의존한다. 즉 @Repository가 없으면 컴파일조차 할 수가 없다.@Service@RequiredArgsConstructorpublic class BoardService { private final BoardRepository repo; public Board write(Board board) { return repo.save(board); } public Optional select(long boardNo) { return repo.findById(boardNo); }} 하..
[spring test] 3. @Service Layer test이번에는 service 영역에 대한 테스트를 처리해보자. @Service Layer Test @Service Layer@Service Layer는 통상 @Repository에 의존한다. 즉 @Repository가 없으면 컴파일조차 할 수가 없다.@Service@RequiredArgsConstructorpublic class BoardService { private final BoardRepository repo; public Board write(Board board) { return repo.save(board); } public Optional select(long boardNo) { return repo.findById(boardNo); }} 하..
2023.11.27 -
가짜 객체를 이용한 테스팅프로젝트를 진행하다 보면 진짜 객체를 사용하지 못하거나 사용하지 말아야 할 경우가 왕왕 발생한다.Service가 Repository를 호출하는 구조의 애플리케이션에서 Service를 테스트한다고 생각해보자.만약 Service는 만들어졌는데 Repository는 아직 개발 중인 상황이라면 Repository가 개발이 완료될 때까지 Service에 대한 테스트를 미뤄야 할까? 또는 Service에서 Repository를 호출하는 과정에서 오류가 발생했다면 누구의 문제일까? 이처럼 Service의 동작이 Repository에 영향을 받는 게 맞을까? 이런 경우 Repository는 차라리 없다고 생각하고 가짜를 사용하는것이 유리하다.JUnit은 이런 상황에서 Mockito framew..
[junit] jupiter 4. 가짜 객체를 활용한 테스트가짜 객체를 이용한 테스팅프로젝트를 진행하다 보면 진짜 객체를 사용하지 못하거나 사용하지 말아야 할 경우가 왕왕 발생한다.Service가 Repository를 호출하는 구조의 애플리케이션에서 Service를 테스트한다고 생각해보자.만약 Service는 만들어졌는데 Repository는 아직 개발 중인 상황이라면 Repository가 개발이 완료될 때까지 Service에 대한 테스트를 미뤄야 할까? 또는 Service에서 Repository를 호출하는 과정에서 오류가 발생했다면 누구의 문제일까? 이처럼 Service의 동작이 Repository에 영향을 받는 게 맞을까? 이런 경우 Repository는 차라리 없다고 생각하고 가짜를 사용하는것이 유리하다.JUnit은 이런 상황에서 Mockito framew..
2023.11.23