기타 소프트웨어 정적 분석을 위한 소나큐브 설치하기 - 3부
페이지 정보
본문
안녕하세요. 엔지엠소프트웨어입니다. 소프트웨어 코드 정적 분석 마지막 시간이네요. [ 1부 ]와 [ 2부 ]를 먼저 설정하고 이 글을 보셔야 합니다. SonarQube에 로그인한 후 새로운 프로젝트를 생성합니다. 처음 생성하는 경우 화면 중앙에 "Add Project" 버튼이 표시됩니다. 저는 이미 프로젝트를 만들었기 때문에 우측 상단에 "Add Project" 버튼이 표시되고 있습니다.
※ 소나큐브 접속 주소는 "localhost:9000" 입니다.
처음 설치의 경우 여러가지 메뉴들이 보이는데요. 로컬 환경이기 때문에 Manualy를 선택하세요. 아래 정보를 입력하고 Set Up을 클릭하세요.
- Project key: myproject
- Display name: MyProject
"NGMsoftware"를 입력하고, Generate를 클릭하세요.
"Provide a token"이 생성되었습니다. 이 값은 프로젝트를 식별하는 고유키인데요. 저장되어 있으니 따로 보관하지 않아도 됩니다. "Continue"를 클릭하세요.
아래 가이드에 따라 설정을 마무리하면 됩니다. 저같은 경우는 C#을 이용하기 때문에 ".NET"을 선택하고, ".NET Framework"를 선택했습니다. 소나큐브 스캐너를 설치하기 위해 아래 경로로 이동하세요.
[ 소나큐브 스캐너 다운로드 ]
자신에게 맞는 .NET을 다운로드 합니다.
다운로드 받은 소나큐브 스캐너를 압축 해제하고, 소나큐브 폴더 아래에 복사합니다.
시스템 속성으로 이동한 후 환경 변수를 클릭합니다.
시스템 변수의 "%PATH%"에 아래 2개를 추가해주세요.
- C:\sonarqube-8.9.1.44547\sonar-scanner-msbuild-5.2.1.31210-net46
- C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin
관리자 권한으로 CMD를 실행하고, 프로젝트의 루트로 이동합니다. 아래 명령을 순차적으로 실행하세요.
작업이 완료되면 프로젝트 분석 내용을 확인할 수 있습니다.
다음에는 젠킨스를 설치하고 소나큐브 확장 도구를 이용해서 대시보드를 구성해보겠습니다. 대시보드를 이용하면 여러가지 도움이되는 정보들을 시각화하여 빠르게 현재 상태를 확인할 수 있습니다. 이외에도 여러가지 방법들이 존재하는데요. 가장 일반적인 조합으로 가는게 좋겠죠? 아무튼, 위 내용을 보면 Coverage가 0%인게 마음에 걸립니다. 우선은, Duplications(중복도)를 낮추기 위해 Common 모듈을 추가해서 파편화된 코드들을 중앙에 집중 시키고 참조하도록 작업해야겠습니다. 그리고, 잠재적 위험을 나타내는 항목들을 하나씩 처리해 나가야겠네요. 프로젝트 코드를 정적 분석하는 방법은 그렇게 어렵지 않은데요. 여러분들도 소나큐브를 이용해서 코드 품질을 높이는데 활용하면 좋겠습니다.
- Blocker: 즉시 수정 필요 (메모리 누수, 파괴되지 않은 객체, 닫히지 않은 연결 - FTP, DB등등)
- Critical: 즉시 검토 필요 (비어 있는 캐치 블록, SQL 오류, 잘못된 접근)
- Major: 시간을 두고 검토 필요 (중복 코드, 사용되지 않는 맴버, 사용되지 않는 매개변수)
- Minor: 잠재적인 품질 결함 (복잡도가 높은 코드, 너무 긴 함수, 3뎁스 이상 호출)
- Info: 버그는 아니지만, 개발자가 인지해야 할 품질 규칙 또는 코드
즐거운 코딩되세요^^
개발자에게 후원하기
추천, 구독, 홍보 꼭~ 부탁드립니다.
여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~
감사합니다~
- 이전글1부 - 나만 빼고 다 쓰는 젠킨스를 설치 해볼까? (지속적 통합을 위한 최고의 도구 젠킨스와 소나큐브 연동하기!) 21.06.20
- 다음글소프트웨어 정적 분석을 위한 소나큐브 설치하기 - 2부 21.06.20
댓글목록
등록된 댓글이 없습니다.