인프런 워밍업 클럽 스터디 2기 BE 클린코드 & 테스트 과정- 4주차 발자국

인프런 워밍업 클럽 스터디 2기 BE 클린코드 & 테스트 과정- 4주차 발자국

4주차 발자국 회고

  1. Presentation Layer 테스트

    1. MockMvc
      파라미터에 대한 최소한의 검증을 수행한다는 것은 중요하게 생각해 왔지만 해당 부분에 대한 모든 코드는 DTO 객체에서 처리해야만 한다는 생각을 가지고 있었다. 하지만 Validation을 사용해 DTO 객체에서 모든 부분을 확인하는 것은 도메인에 대한 이해를 바탕으로 다른 부분에서 확인해야 할 수도 있다는 코치님의 가르침은 신선하고 흥미로운 부분이었다. 무조건적인 확인이 아닌 좀 더 도메인을 이해하고 그 이해를 바탕으로 검증 시도를 할 수 있는 코드를 작성할 수 있도록 노력해야 함을 느낄 수 있었다.




  2. 더 나은 테스트를 작성하기 위한 구체적 조언

    1. 한 문단한 주제!
      분기에서 나누어지는 모든 상황을 파악하는 것은 하나의 주제라고 생각했지만 그렇지 않았다. 테스트의 제목을 명시하니 그에 대한 이해가 더 크게 다가왔다. 하나의 목적을 두고 그 목적을 저해하지 않는 코드만이 명확한 테스트라는 것은 테스트에 대해 많은 생각을 할 수 있게 된 것 같다.

    2. Test Fixture 구성
      다양한 테스트를 구성하는데 있어 테스트의 편의성을 추구하고 복잡성을 덜어내기 위해 데이터를 미리 셋업하는 것을 긍정적으로 생각하고 있었지만 자원을 생성할 때 사용되는 파라미터를 중요하게 생각해야 한다는 것은 당연한 말일 수도 있지만 꽤나 충격적이었다. 테스트에 필요한 일련의 객체를 만드는 과정에서 사용되지 않는 즉, 중요하지 않는 파라미터에 대해서는 메서드의 파라미터에서 제외함으로써 현재 진행되는 테스트에서 중요한 것은 무엇인지 읽는 이로 하여금 알려 줄 수 있음을 배운 것은 테스트가 하나의 문서임을 분명하게 깨닫게 해준 것 같다.

댓글을 작성해보세요.

채널톡 아이콘