TEST5 [@DataJpaTest] h2 인메모리 db를 이용한 테스트 설정 방법 서론 테스트 코드를 작성하는 것은 매우 중요하다고 익히 들었고, 필수적인 영역이기 때문에 이에 항상 만전을 기하고 있다. 모든 케이스를 테스트할 이유는 없기 때문에, 크게 경우를 나누어 필요하다고 생각하는 부분만 시나리오, 통합, 단위 테스트를 나누어 진행하는 것이 효율적이라고 들었다. 배포를 계속 해오면서 jar 파일을 빌드하는 도중 테스트를 제외하는 것은 무의미하다고 판단했기 때문에, 모든 테스트를 어떤 환경에서든 돌아 갈 수 있게 고민을 했던 기억이 있다. 이렇게 하나하나 완성도 있게 쌓아나가는 공부를 하는 것이 속도는 느리지만, 유의미한 발전 과정이라 느낀다. 이번에 대규모 리팩토링을 실시하면서 코드 수정 및 구조가 크게 개편되었고, 테스트 코드도 변경 사항이 많이 생겨서 다 수정했다. persi.. 2022. 12. 21. [이슈] Pageable test 관련 에러 💡문제 API Controller를 테스트 하는데 잘 성공하던 테스트가 계속 실패한다. org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.IllegalStateException: No primary or single unique constructor found for interface org.springframework.data.domain.Pageable 테스트 코드 mockMvc.perform(get("/api/v2/users") .param("page", String.valueOf(page))) .andExpect(status().isOk()) .andE.. 2022. 11. 23. 「테스트 코드 & Spring REST Docs」 개인 프로젝트는 완성이 되었다. 이제는 세부적인 디테일에 신경을 쓰며 리팩터링과 그에 필요한 개념 정리를 하며 프로젝트에 적용시키고 있다. REST API를 처음 설계해 보았는데, 부족한 점이 많았지만 신선한 경험이고 짧은 기간 내에 배운 것이 많은 설계 과정이었다. API를 설계하면 그에 맞는 명세가 필요한데, 보통 Swagger나 Spring REST Docs 프레임워크를 이용한다고 한다. Swagger를 사용하면 애노테이션을 이용해 편하게 문서를 작성할 순 있지만, 프로젝트의 확실성과 정확성을 뒷받침하기 위해서는 테스트 코드 작성이 필수라고 생각하기 때문에 Spring REST Docs를 이용하기로 생각하며 적용해보았다. 테스트 코드 크게 단위 테스트와 통합 테스트가 있다. 통합 테스트 단위 테스트.. 2022. 6. 20. 2022.04.22의 기록 ▶ 파트 1 (10시 ~ 7시) 1. Gradle Test 코드 수정 (PrintGameResult, ComputerNumber 부분) 2. 자소서 수정 3. Boot project 구상 4. Spring MVC 내부 개념 정리 5. 알고리즘 1문제 (2문제) 6. mysql Ch5. 트랜잭션, CH6. 데이터 압축 7. 이펙티브 자바 아이템 1 정리 ▷ 알고리즘 문제 : 정수의 내림차순 정렬 import java.util.Arrays; class Solution { public long solution(long n) { long answer = 0; String number = String.valueOf(n); String stringNum = ""; char[] numArr = new char[num.. 2022. 4. 22. 2022.04.20 의 기록 ▶ 오늘 하루 계획 파트 1 (11시 ~ 2시) 1. Gradle MVC 프로젝트 테스트 코드 리팩토링 2. Mysql 3단원 정리 파트 2 (3시 ~ 1시) 1. 스프링MVC 개념 정리 : 핸들러 추상클래스로 왜 이루어져 있는지 고민해보자 3개 2. 스프링부트 프로젝트 WIkI 정리 3. 노션 이력서 템플릿 및 초안 작성 4. 도커 2문서 5. 알고리즘 1문제 2022. 4. 20. 이전 1 다음 반응형