Integrasi PHPStorm dan SonarQube

Bayu Hendra Winata
Javan Cipta Solusi
Published in
3 min readJan 6, 2021

Kode Baik vs Kode Buruk

Sebagai engineer, kita tentu ingin mendapatkan instant feedback ketika ada kodingan yang berpotensi menimbulkan bug, kurang optimal, ataupun terlalu bertele-tele dan tidak mudah dibaca. Compiler (atau PHP interpreter) hanya bisa mendeteksi kesalahan sintaksis (benar atau salah), tapi tidak bisa mendeteksi kualitas kode (baik atau buruk).

Ada beberapa tools tambahan yang bisa dipakai untuk mendapatkan instant feedback sekaligus meningkatkan kualitas kode kita, salah satunya adalah sonarlint.

Instant feedback, right on your IDE.

Kenapa Sonarlint

Artikel di bawah ini sudah cukup menjelaskan apa dan kenapa sonarlint:

https://blog.javan.co.id/cara-mudah-meningkatkan-kualitas-kode-menggunakan-sonar-37c6f8e0239b

Install Plugin Sonarlint

Instalasi Sonarlint untuk PHPStorm sudah dibahas di artikel berikut:

Setup SonarQube

SonarQube adalah versi self hosted bisa didapatkan secara gratis di https://www.sonarqube.org/downloads/. SonarQube berfungsi sebagai dashboard dan management tools untuk mengelola proyek-proyek yang perlu dianalisis.

Dengan mengintegrasikan sonarlint di PHPStorm dengan SonarQube, maka proses analisis kode bisa lebih “match”. Jadi jika ada isu terkait kode di dashboard SonarQube, maka akan muncul juga di PHPStorm, dan begitu juga sebaliknya*.

Untuk tim Javan, SonarQube bisa diakses di https://sonar.javan.co.id/.

Integrasi PHPStorm, Sonarlint dan SonarQube

Setup koneksi ke SonarQube

Buka menu Preferences — Tools — SonarLint, lalu tambah koneksi baru (icon “+”).

Pilih sonarqube, dan masukkan URL yang sesuai.

Anda akan diminta Token untuk otentikasi. Klik tombol “Create Token” dan Anda akan dibawa ke halaman https://sonar.javan.co.id/account/security.

Generate token baru, atau boleh menggunakan token yang lama jika sudah pernah membuat sebelumnya. Ada baiknya simpan token ini di catatan pribadi Anda, karena setelah digenerate kita tidak akan bisa melihatnya lagi.

Isikan Token tersebut ke langkah sebelumnya. Seharusnya SonarQube sudah berhasil terintegrasi dengan PHPStorm.

Selanjutnya masuk ke submenu Project Settings lalu isikan Connection dan Project sesuai kebutuhan.

Selesai, plugin Sonarlint di PHPStorm sekarang sudah terkoneksi dengan SonarQube.

Daftar “issue” bisa dilihat di Tool Windows — SonarLint atau Problems.

Untuk memudahkan show/hide Tool Windows, silakan atur sendiri shortcut sesuai selera di Preferences — Keymap — Tool Windows.

Broken Windows

SelamatAnda telah selangkah lebih maju untuk menuju engineer kelas dunia. Setelah berhasil mengintegrasikan PHPStorm — Sonarlint — SonarQube, langkah berikutnya yang tidak kalah penting adalah memastikan tidak ada satupun isu di file yang kita buat. Satu defect kecil di suatu file, bisa merembet dengan cepat ke seluruh folder aplikasi. Jangan jadi penyebab “broken windows”.

Selamat mencoba!

*Pada prakteknya tidak semua isu yang muncul di SonarQube akan muncul di PHPStorm, namun jumlahnya tidak terlalu banyak.

--

--