본문 바로가기

spring boot3

단위 테스트(Unit Test) & 통합 테스트(Integration Test) 지금까지 테스트 작성을 거의 하지 않았다. 애플리케이션을 실행해서 직접 확인했는데 코드의 변경이 있을 때마다 많은 예외와 잦은 변경 시 처음부터 하나하나 다시 확인을 해봐야 하는 번거로움과 시간이 오래 걸린다는 문제로 테스트의 중요성을 많이 느꼈다. 그래서 현재 진행하고 있는 프로젝트는 실제 운용을 하기 때문에 필수적으로 테스트를 작성하기로 팀원들과 얘기를 했다. 테스트에 대해서 아는 내용이 없고 구현 경험이 적기 때문에 처음에는 구글 검색과 AI 등으로 간단히 구현했다. 그러다 보니 잘 구현한 게 맞는지 의문점과 단위 테스트(Unit Test), 통합 테스트(Integration Test)의 경계점이 많이 혼동 돼서 개념과 범위 등을 공부하고 기록을 남기려고 한다. 테스트의 중요성실제로 테스트 없이 개.. 2025. 4. 9.
Spring 프로젝트 AWS EC2 Docker 배포 Spring Boot 프로젝트를 AWS EC2에 Docker를 사용해서 배포를 해보려고 합니다.프로젝트를 Docker build를 통해 Image로 만들고 Docker Hub에 공유해서 EC2에서 다운로드하고 프로젝트를 실행하는 방법입니다.AWS EC2 구축 전이라면 아래의 링크를 참조해 주세요.AWS EC2 구축 세팅(프리 티어)현재 환경과 더 간편하게 배포하는 방법 및 EC2에 도커 설치 방법은 아래의 링크를 참조해 주세요.Spring Boot 프로젝트 AWS EC2 배포하기1. Gradle build먼저 gradle build로 jar 파일을 만들어줍니다. 그전에 따로 설정 없이 빌드를 하면 "plain"이 없는 것과 있는 것 2개의 jar 파일이 생성되기 때문에 "*-plain.jar" 파일은 생.. 2025. 2. 5.
Spring Boot 프로젝트 AWS EC2 배포하기 Spring Boot 프로젝트를 AWS EC2에 가장 쉽고 간단한 방법으로 배포를 해보려고 합니다.프로젝트를 빌드해서 jar 파일을 만들고 EC2 인스턴스로 옮겨서 jar 파일을 실행만 하면 됩니다.AWS EC2 구축 전이라면 아래의 링크를 참조해 주세요.AWS EC2 구축 세팅(프리 티어) 저는 스프링에서 제공하는 예제 중 petclinic의 gradle 프로젝트로 배포했습니다. 프로젝트 기본 설정이 h2 database를 사용하고 있어서 "application.properties" 파일에서 "database" 값을 "mysql"로 변경하고, "spring.profiles.active=mysql"을 추가해서 mysql로 사용하도록 변경하고 진행했습니다. petclinic에 대한 예제는 아래의 링크를 참.. 2025. 2. 2.