AI Briefing

detekt와 reviewdog을 활용한 코드 품질 향상

·2023.10.12 02:00

올리브영 상품스쿼드에서 detekt, reviewdog, GitHub Actions를 도입하여 코드 컨벤션을 자동화하고 품질을 개선한 사례를 소개한다.

올리브영 상품스쿼드는 다수의 개발자가 참여하는 Kotlin 기반 프로젝트에서 Code Convention을 유지하고 코드 품질을 높이기 위해 새로운 Code Detecting Process를 도입했다.

기존에 사용하던 SonarQube는 커스텀 룰(Custom Rule) 작성이 어렵고, 모든 코드 이슈를 완벽히 감지하기 어렵다는 한계가 있었다. 이를 해결하기 위해 detekt, reviewdog, GitHub Actions를 조합한 워크플로우를 구축했다.

detekt는 Kotlin에 특화된 코드 분석 도구로, 코드 복잡성 및 Code Smell 탐색에 용이하며 커스텀 룰 작성이 자유롭다. 올리브영은 이를 활용해 olive-rules 모듈을 별도로 생성하고, SaveCheck, HttpMethodCheck 등 팀에 필요한 Custom Rule을 직접 구현하여 적용했다.

GitHub Actionsreviewdog을 연동함으로써, Pull Request(PR) 발생 시 자동으로 코드를 검사하고 리뷰 결과가 PR에 바로 표시되도록 자동화하여 개발 생산성을 높였다.

이 요약은 원문 이해를 돕기 위한 큐레이션입니다. 저작권은 원저작자에게 있으며, 정확한 내용과 맥락은 원문을 확인하세요.

요약 오류, 출처 표기 문제, 삭제 요청은 문의 · 건의로 알려주세요.