DevOps

정적 분석 도구 Sonarqube 도입하기

SonarQube

Overview

소나큐브는 프로그래밍 언어의 버그, 코드 스멜, 보안 취약성과 같은 정적 분석과 자동화된 리뷰를 수행하여 코드 품질의 지속적인 인스펙션을 지원하는 플랫폼이다.

  • 정적 분석이란?
    프로그램의 실행 없이 코드를 분석하는 것.
    테스트 커버리지를 확인할 수 있는 Jacoco도 정적 분석 도구라고 불린다.
  • 코드 스멜이란?
    프로그래밍 코드에서 더 심각한 문제를 일으킬 가능성이 있는 프로그램 소스 코드의 특징을 말한다.

 

Why SonarQube?

  • 레퍼런스가 많다.
  • Github이나 Jenkins와의 연동을 통해 자동 정적 코드 분석을 구성할 수 있다.

소나 큐브 적용까지의 대장정에 앞서 코드 커버리지에 대해서 알아보자.

 

소나큐브를 프로젝트에 적용하는 방법은 보또보 위키의 Sonarqube 도입기 를 참고하면 된다.
굳이 복붙하지 않고 링크를 거는 것이 더 좋을 것 같아 링크로 대체한다.

 

참고 자료

https://www.slideshare.net/curvc/sonarqube-sonarqube
코드 분석 도구 적용기 - 3편, SonarQube 적용하기 | young's devlog