이 문서는 SonarQube 메인 메뉴 중 Quality Gates 메뉴에 대한 가이드를 공유하기 위해 작성되었다.
도구명 | SonarQube CE |
---|---|
버전 | 9.4 |
Quality Gates 란
Quality Gates은 SonarQube의 품질 기준 정책으로, 프로젝트를 측정하는 조건(Conditions) 집합을 정의한다.
Quality Gates 조건 집합의 예는 다음과 같다.
- 신규 Block Issue 없음 (No new blocker issues)
- 신규 코드에 대한 Code Coverage가 80%를 초과 (Code coverage on new code greater than 80%)
이상적으로 모든 프로젝트는 동일한 Quality Gates를 사용하지만 다음과 같은 예로 항상 실용적이지는 않다.
- 기술 구현은 응용 프로그램마다 다름 (웹 또는 Java 응용 프로그램의 신규 코드에 대해 동일한 Code Coverage가 필요하지 않을 수도 있음)
- 일부 응용 프로그램(예: 내부 프레임워크)에 대해 더 강력한 요구 사항을 보장하려고 함
SonarQube는 Quality Gates를 여러개 정의하여 프로젝트별로 다르게 적용할 수 있다.
SonarQube Quality Gates 메인화면
Quality Gates 메인화면
Quality Gates 메뉴에서 Qaulity Gates 정의, 프로젝트 할당 및 관리 기능을 제공한다.
- BUILT-IN 으로 설정되어 있는 "Sonar way" Quality Gates은 SonarQube에 내장된 Quality Gates로 편집/삭제가 불가능하다.
각 화면 및 기능 요약 설명
정의된 Quality Gates 목록 표시되며, 임의 Quality Gates 클릭시 우측에 상세정보 표시
- 선택된 Quality Gates에 대하여 다음 메뉴 제공
(SonarQube BUILT-IN으로 제공되는 "Sonar way" Quality Gates는 Copy 메뉴만 제공됨)- Rename : 선택된 Quality Gates 이름 변경
- Copy : 선택된 Quality Gates 의 조건과 동일한 조건으로 신규 Quality Gates 생성
- 기본(DEFAULT)으로 설정된 Quality Gates는 Quality Gates를 별도로 할당하지 않은 모든 프로젝트에 적용됨
- Delete : 선택된 Quality Gates 삭제
선택된 Quality Gates에 설정된 조건(Conditions)을 New Code / Overall Code로 구분하여 표시하고, 조건 추가 / 삭제 / 수정 기능 제공
- 선택된 Quality Gates를 할당(사용) 할 프로젝트를 표시하고, 체크 박스를 통해 프로젝트 할당 / 할당 해제 기능 제공
- 기본(DEFAULT)으로 설정된 Quality Gates는 별도로 할당되지 않은 모든 프로젝트에 기본적으로 적용되어 해당 기능 사용불가함
- 선택된 Quality Gates를 관리할 수 있는 사용자 / 그룹 권한을 표시하고 권한 부여 / 해제 기능 제공
- BUILT-IN으로 제공되는 "Sonar way" Quality Gates 는 해당 기능 제공되지 않음