SonarQube
SonarQube: Penjelasan dan Contoh
Oleh : Solusi Edupro (2026)
1. Apa Itu SonarQube?
SonarQube (dahulu Sonar) adalah platform open-source untuk ** Continuous Code Quality Assurance**. Tool ini digunakan untuk menganalisis kode secara otomatis untuk mendeteksi bug, vulnerability (kerentanan keamanan), code smell, dan masalah kualitas lainnya.
2. Fungsi Utama SonarQube
| Fungsi | Deskripsi |
|---|---|
| Static Code Analysis | Menganalisis kode tanpa menjalankan program |
| Bug Detection | Menemukan kesalahan kode yang masalah |
| Security Vulnerability | Mendeteksi kerentanan keamanan seperti SQL Injection, XSS, dll |
| Code Smell | Mengidentifikasi kode yang sulit dibaca atau dipelihara |
| Technical Debt | Mengukur waktu yang dibutuhkan untuk memperbaiki masalah |
| Code Coverage | Melihat persentase kode yang diuji oleh unit test |
| Duplikasi Kode | Menemukan kode yang duplikat |
3. Cara Kerja SonarQube
- ┌─────────────┐ ┌──────────────┐ ┌─────────────┐
- │ Kode │────
│ SonarQube │────
│ Dashboard │
- │ Source │ │ Scanner │ │ Report │
- └─────────────┘ └──────────────┘ └─────────────┘
- │ │ │
- Developer Analyze View Results
- Push Code Code Quality & Metrics
Alur Kerja:
- Developer menulis kode dan push ke repository
- SonarQube Scanner (atau plugin CI/CD) memindai kode
- Hasil analysis dikirim ke SonarQube Server
- Dashboard menampilkan laporan kualitas kode
4. Contoh Penggunaan
A. Install SonarQube dengan Docker
Bash
- # Pull Image SonarQube
- docker pull sonarqube:latest
- # Run Container
- docker run -d –name sonarqube
- -p 9000:9000
- sonarqube:latest
B. Konfigurasi proyek Java dengan Maven
File: pom.xml
xml
org.sonarsource.scanner.maven sonar-maven-plugin 3.9.1.2184
C. Menjalankan Analysis
bash
- # Analyze project
- mvn sonar:sonar
- -Dsonar.host.url=http://localhost:9000
- -Dsonar.login=your-token
D. Contoh Kode dengan Bug dan Code Smell
Kode Buruk ( sebelum SonarQube):
java
- public class UserService
Kode Baik (sesudah SonarQube):
java
- public class UserService
5. Dashboard SonarQube
Dashboard SonarQube menampilkan:
| Metric | Status |
|---|---|
| Bugs | 🔴 2 Critical |
| Vulnerabilities | 🟠 5 Major |
| Code Smells | 🟡 12 Minor |
| Coverage | 🟢 85% |
| Technical Debt | 🔴 2 days |
6. Kelebihan & Kekurangan
Kelebihan:
- Mendukung 20+ bahasa pemrograman
- Gratis untuk versi Community (open source)
- Terintegrasi dengan CI/CD (Jenkins, GitLab, GitHub Actions)
- Dashboard yang informatif
Kekurangan:
- Versi gratis terbatas fiturnya
- Memerlukan resource server yang cukup besar
- Konfigurasi awal cukup kompleks
7. Bahasa yang Didukung
SonarQube mendukung berbagai bahasa pemrograman:
SonarQube (dahulu Sonar) adalah platform open-source untuk ** Continuous Code Quality Assurance**. Tool ini digunakan untuk menganalisis kode secara otomatis untuk mendeteksi bug, vulnerability (kerentanan keamanan), code smell, dan masalah kualitas lainnya.
2. Fungsi Utama SonarQube
| Bahasa | Dukungan Penuh |
|---|---|
| Java | ✅ |
| JavaScript/TypeScript | ✅ |
| C# | ✅ |
| Python | ✅ |
| Go | ✅ |
| PHP | ✅ |
| Kotlin | ✅ |
| Ruby | ✅ |
| Swift |
Kesimpulan
SonarQube adalah tool yang sangat berguna untuk menjaga kualitas kode dalam proyek software. Dengan mengintegrasikan SonarQube ke dalam workflow development, tim dapat:
- Mendeteksi bug lebih awal
- Meningkatkan keamanan kode
- Mengurangi technical debt
- Mempertahankan standar kualitas kode
Bagikan Artikel ini…
Artikel Terbaru
Kategori Artikel:
Recently Post
Kerja Lebih Cerdas, Bukan Lebih Keras
Kerja Lebih Cerdas, Bukan Lebih Keras: Mengintip [...]
Menuju Birokrasi Cerdas
Menuju Birokrasi Cerdas: Mengapa ASN Masa [...]
Trend AI (Tren Kecerdasan Buatan)
Tren AI merujuk pada perkembangan dan [...]








