자동화

스마트하게 일하기/테스트 자동화 이야기

테스트 코드(Jest)를 이용한 API 리팩토링 전략

요즘 맡고있는 업무중에 기존 레거시 API 에 대한 리팩토링을 진행하거나 V1 프로젝트의 소스를 V2 로 옮기는 작업을 간간히 진행하게 되었습니다. 아무래도 해당 업무를 오래하지 않았고 오래되고 히스토리를 모르는 API 의 리팩토링을 진행하다보니 매번 Postman 을 통해서 결과값을 비교하는 것은 작업 효율이 그리 좋지는 못했습니다. 실제로 여러 파라미터들의 결과값을 테스트하고 소스코드 수정의 부담감을 줄이면서 테스트 통과라는 심리적 안정을 통해서 안정감 그리고 업무 효율성까지 끌어 올릴 수 있었던 제 방법을 소개합니다. 우선 제가 진행했던 API 리팩토링에서 가장 중요한 포인트는 기존 API 의 호환성을 유지하고 로직의 코드를 정리하거나 타입을 정의 혹은 불필요한 로직을 단순화하는 작업이었습니다. 결..

스마트하게 일하기

Jenkins를 이용한 배포 자동화

Jenkins는 무엇인가? 젠킨스(Jenkins)는 소프트웨어 개발 시 지속적 통합(continuous integration) 서비스를 제공하는 툴이다. 다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유 영역에 있는 Git 등의 저장소에 빈번히 업로드함으로써 지속적 통합이 가능하도록 해 준다. MIT 라이선스를 따른다. 왜 Jenkins를 사용하는가? 저는 개인적으로 CI/CD툴 중에서는 젠킨스를 가장 선호합니다. 주로 젠킨스를 사용하였기에 익숙하고 편한 것도 이유가 될 수 있지만 플러그인을 통해서 확장이 가능하고 스케줄러 등 시스템적으로 필요한 기능들 역시 젠킨스에서 기본 제공을 해주는 덕분에 서버 상태 체크나 혹은 자동 배포 등 여러 방면에서 활용할 수..

heeman
'자동화' 태그의 글 목록