🔥딱 8일간! 인프런x토스x허먼밀러 역대급 혜택

워밍업 클럽 3기 BE 클린코드&테스트 - 4주차 발자국

워밍업 클럽 3기 BE 클린코드&테스트 - 4주차 발자국

📖 강의 요약

  • Dummy : 아무것도 하지 않는 깡통 객체

  • Fake : 단순한 형태로 동일한 기능은 수행하나, 프로덕션에서 쓰기에는 부족한 객체

  • Stub : 테스트에서 요청한 것에 대해 미리 준비한 결과를 제공하는 객체. 그 외에는 응답하지 않는다.

  • Spy : Stub이면서 호출된 내용을 기록하여 보여줄 수 있는 객체, 일부는 실제 객체 처럼 동작 시키고 일부만 Stubbing할수 있다. (상태 검증)

  • Mock : 행위에 대한 기대를 명세하고, 그 에 따라 동작하도록 만들어진 객체 (행위 검증)


Spring REST Docs

  • 테스트 코드를 통한 API 문서 자동화 도구

  • API 명세를 문서로 만들고 외부에 제공함으로써 협업을 원활하게 한다.

  • 기본적으로 AscliDoc을 사용하여 문서를 작성한다.

장점

  • 테스트를 통과해야 문서가 만들어 진다.

  • 프로덕션 코드에 비침투적이다

단점

  • 코드양이 많다

  • 설정이 어렵다


💡 미션

 

1. @Mock, @MockBean, @Spy, @SpyBean, @InjectMocks 의 차이를 한번 정리해 봅시다.

2. 아래 3개의 테스트가 있습니다. 내용을 살펴보고, 각 항목을 @BeforeEach, given절, when절에 배치한다면 어떻게 배치하고 싶으신가요?

(@BeforeEach에 올라간 내용은 공통 항목으로 합칠 수 있습니다. ex. 1-1과 2-1을 하나로 합쳐서 @BeforeEach에 배치)

미션 제출 url : https://inf.run/7N27s

 

 

💬 회고

 인프런 워밍업 클럽 스터디가 종료 하였다 1달동안 클린코드와 테스트 코드 강의를 들으며 코드에 대해서 생각해보는 좋은 기회 였다.

📎출처

Practical Testing: 실용적인 테스트 가이드

https://www.inflearn.com/course/practical-testing-%EC%8B%A4%EC%9A%A9%EC%A0%81%EC%9D%B8-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EA%B0%80%EC%9D%B4%EB%93%9C/dashboard

댓글을 작성해보세요.

채널톡 아이콘