TDD 3

NextStep - TDD, 클린 코드 with Java 18기 후기

목차수강 시작과 수료 완료강의 소개강의 장점강의 신청시 주의사항여담  0. 수강 시작과 수료 완료 2024년 3월 4일 부터 4월 18일까지, 약 1.5개월동안 진행됐던 NextStep의 클린 코드 with Java 18기를 수강했다.수강 계기는 같은 회사 동기가 함께 하는게 어떻겠냐고 권유했던게 시작이었다. 제목 그대로 Java로 TDD를 학습하는, 요약컨데 1.5개월짜리 TDD 온라인 부트캠프였다.1.5개월 동안 크게 4개의 Section으로 나누어 각 Section마다 주어진 주제를 1대1로 매칭되는 멘토(= 코드 리뷰어)와 함께 진행하는게 대략적인 내용이 되겠다. 수강할지 말지 고민을 꽤 많이했는데, 크게 아래 2가지 이유때문에 쉽사리 수강선택을 하지 못했다. 1.5개월 온라인 부트캠프이며, 강의..

📔Diary 2024.04.27

@SpringBootTest, @AutoConfogureMockMvc, 그리고 @WebMvcTest

JUnit과 단위테스트 SpringBoot에서 JUnit를 사용하여 테스트 코드를 작성할때, 대표적으로 @SpringBootTest와 @WebMvcTest를 사용하는 경우가 많다. 처음에는 둘의 차이를 간단하게 @SpringBootTest는 모든 빈을 가져와서 속도가 느리고 @WebMvcTest는 필요한 빈만 가져와서 속도가 빠르다 정도로 이해를 했지만, 정확히 개념을 이해하지 못하고 사용한 탓에 테스트 케이스 작성 실패를 겪은적이 있었다. 내가 쓴 테스트 케이스가 어떤 상황에서, 무엇을 목적으로 돌아가는 테스트 케이스인지를 보다 정확히 이해하기 위해 개념을 정리한다. @SpringBootTest + @AutoConfigureMockMvc 1) 특징 - 프로젝트 내부에 있는 스프링 빈을 모두 등록하여 테..

스프링과 JUnit

JUnit이란? 먼저 아래 개념들을 순차적으로 이해하자. TDD (Test-driven Development) : 테스트 주도 개발에서 사용하지만, 코드의 유지 보수 및 운영 환경에서의 에러를 미리 방지 하기 위해서 단위 별로 검증 하는 테스트 프레임워크. 쉽게 말해 테스트가 주가되는 개발이다. 단위 테스트 : 작성한 코드가 기대하는 대로 동작을 하는지 검증 하는 절차 JUnit : Java기반의 단위 테스트를 위한 프레임워크. Annotation 기반으로 테스트를 지원하며, Assert(예상, 실제)를 통해 검증한다. Jacoco : : Java코드의 코드 커버리지를 체크하는 라이브러리. 결과를 Html, Xml, CSV로 확인 가능하다. JUnit 사용방법 어느 프로젝트를 생성하건 위 그림과 같이 t..