배경CI/CD 파이프라인이 길었고, 개발하면서 로컬에서 테스트를 자주 돌려보는 과정도 오래 걸렸습니다.테스트가 약 300개가 넘어가다 보니, 한 번 실행할 때마다 개발 리듬이 끊겼습니다.실제로 개선 전 기준으로 전체 테스트 실행 시간은 평균 72.19초 수준이었습니다.따라서 테스트 시간을 단축하는 것이 가장 우선순위 높은 개선 과제라고 판단하였습니다.원인Spring Test는 같은 설정으로 만든 ApplicationContext라면 Context Caching으로 재사용합니다.하지만 테스트마다 설정이 조금씩 달라지면(컨텍스트 키)가 달라지면) 캐시를 사용하지 못하고 컨텍스트를 새로 생성하게 됩니다.측정 환경 및 방법환경OS: macOSJDK: Corretto 21빌드/테스트: Gradle Wrapper(..
SpringBoot
해당 게시글은 Tom Gregory 의 Introduction to writing Gradle plugins 아티클 예제를 기반으로 작성된 게시글 입니다. Gradle 플러그인이란?빌드를 위한 추가기능을 제공하며 아래와 같이 적용할 수 있습니다.plugins { id 'org.springframwork.boot' version '2.2.4.RELEASE' } 플러그인 기능- gradle task를 유저가 실행할 수 있도록 구성할 수 있습니다. 예를 들어 maven publish plugin 은./gradlew publisheToMavenLocal 명령을 통해 해당 Task를 실행시킬 수 있게 구성해줍니다. 또한 이러한 task들은 task graph를 통해 기본적으로 실행되도록 구성할 수도 있습니다. S..