본문 바로가기

프로젝트/스터디타임

mock을 활용한 테스트 프로젝트에 사용되는 service, repository가 늘어나니 테스트도 복잡해졌다.예를 들어 MembershipService를 테스트하고 싶은데, 그러려면 MembershipService가 의존성을 지니는 User, Study 관련 내용을 설정해 주어야 했다. 실제 테스트 코드보다 given에 쓰는 코드가 더 길어지니 테스트 수행에 어려움이 많았다. 문제를 해결하려 검색을 하다 가려운 곳을 정확히 긁어주는 글을 찾았다.https://jojoldu.tistory.com/226 mock을 사용하면 아주 쉽게 문제를 해결할 수 있었다.상세한 내용은 위 블로그에 아주 잘 정리되어 있다. 블로그 글을 따라 mock를 사용했더니 코드가 아래처럼 정리됐다.원래 코드는 db에 user 생성해서 넣고, study 생..
dto와 entity를 구분해서 구현한 이유 본 카테고리의 포스팅은 스터디 프로젝트를 진행하며 생각한 내용을 정리한 것입니다.스터디 프로젝트이며, 제가 나름대로 이해한 바를 적은 것이라 옳지 않은 정보가 있을 수 있습니다. 본 프로젝트에서는 dto객체와 entity(domain)객체를 구분하고 있다. dto 객체는 View layer와 데이터를 주고받을 때 사용된다.entity객체는 db layer와 데이터를 주고받을 때 사용된다. 이렇게 구분한 이유는 아래 글의 내용을 반영하고자 했기 때문이다.절대로 테이블과 매핑되는 Entity 클래스를 Request/ Response 클래스로 사용해서는 안됩니다. Entity 클래스는 가장 Core한 클래스라고 보시면 되는데요. 수많은 서비스 클래스나 비지니스 로직들이 Entity 클래스를 기준으로 동작합니다..