Skip to content

yeolsimee/ROUMO-Server

Repository files navigation

ROUMO (루틴 습관 형성 앱)

image image

기술 스택

  • Java 17
  • Spring Boot 2.7.9
  • Spring Data JPA(QueryDSL)
  • Junit5
  • PostgresSQL

주요 작업

1. CI/CD 배포

  • github actions네이버클라우드를 이용하여 CI/CD 파이프라인 구축 image

2. 인수테스트를 이용하여 테스트 리팩토링

  1. 기존에 루틴을 생성시에 routineDay라는 테이블에 일별로 최대 1년치 컬럼을 생성했음.(매일 반복시)
  2. 직관적이었지만 한 루틴에 최대 365개의 컬럼이 생성되어 리소스 소모가 너무 컸고 미리 생성하는 로직이었기 때문에 특정 기간이 지나면 다시 재 생성해야 한다는 문제가 있다고 판단되어 리팩토링을 하기로 함.
  3. 기존에 운영중인 api에 영향을 미치지 않게 구현로직은 달라지지만 리턴값은 유지하도록 리펙토링을 진행하기로 함.
  4. RestAssured를 이용한 인수테스트가 기존에 구축해놓아서 내부 로직을 변경하면서 리턴값을 체크함.
  5. 결과적으로 루틴 완료 체크시에만 히스토리 관리를 위해 해당날짜, 루틴아이디를 가지고 매핑하여 저장하는 테이블을 만듬.

3. jacoco를 이용하여 테스트 커버리지 체크(진행 예정 작업)

설계

ER 다이어그램

image

클래스 다이어그램

  1. user user
  2. category category
  3. routine routine
  4. routineHistory routinehistory

About

금융 절약 습관 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published