Flutter dan SonarQube

Jika Anda memiliki aplikasi Flutter dan ingin mengetahui kualitas kode Anda atau bagian proyek mana yang perlu ditingkatkan, Anda dapat menggunakan Sonarqube untuk menganalisis kode dan melanjutkan informasi tersebut untuk Anda.

SonarQube (alias Sonar) adalah platform sumber terbuka yang mengukur kualitas kode berdasarkan analisis kode untuk mendeteksi bau kode, bug, cakupan kode, kompleksitas kode, masalah keamanan, dan sebagainya.

Pada artikel ini, saya akan menunjukkan secara detail cara menganalisis kode Flutter Anda menggunakan SonarQube dan Docker dalam langkah-langkah berikut:

  • Menjalankan Sonar secara lokal
  • Buat proyek Sonar
  • Mengunduh Pemindai Sonar
  • Menganalisis proyek Flutter Anda
  • Memeriksa hasilnya

Menjalankan Sonar secara lokal

Anda dapat menjalankan Sonar secara lokal menggunakan buruh pelabuhan, untuk ini jalankan perintah docker run --rm -d -p 9000:9000/tcp edsondiasalves/sonarqube-flutter di terminal Anda, itu akan menarik dan menjalankan gambar SonarQube dengan Plugin SonarQube Flutter sudah diinstal.

Perhatikan Plugin SonarQube Flutter tidak resmi dan gambar buruh pelabuhan yang saya gunakan ini ada di repositori buruh pelabuhan saya sendiri, silakan menggunakannya, tetapi saya tidak bertanggung jawab atas masalah apa pun yang mungkin terjadi

Untuk membuat image Sonar dan menginstal plugin sendiri, unduh plugin dan salin ke image buruh pelabuhan yang sedang berjalan: docker cp ThePluginDownload.jar YourSonarQubeImage:/opt/sonarqube/extensions/plugins

Setelah gambar selesai ditarik dan dijalankan, gambar tersebut akan tersedia di alamat http://localhost:9000, untuk login gunakan admin sebagai penggunadan 1234 sebagai kata sandi

Saat mengklik opsi menu Administrasi dan di bagian Terpasang kita dapat melihat bahwa Plugin Flutter versi 0.4.0 terinstal

Buat proyek Sonar

Sekarang saatnya membuat Proyek Sonar kita, untuk ini klik opsi menu Proyek

Dan di tombol Tambahkan proyek di tengah halaman

Sekarang, klik Secara Manual dan berikan Kunci proyek, perhatikan bahwa nama tampilan akan diisi secara otomatis, Anda tidak perlu mengubah-

Klik tombol Siapkan, dan layar baru akan muncul yang mengharuskan Anda membuat token baru, berikan nama, lalu klik tombol Buat.

Token baru akan dibuat untuk nama token yang diberikan.

Saat mengklik tombol Lanjutkan, ini akan menunjukkan cara menjalankan analisis pada platform yang berbeda

Sekarang proyek Sonar Anda sudah dibuat.

Mengunduh SonarScanner

SonarScanner adalah alat SonarQube resmi yang akan memindai proyek Anda dan mengunggah analisisnya ke proyek Sonar Anda.

Unduh sesuai Sistem Operasi Anda dan tambahkan folder /bin ke Path

Sebagai contoh versi windows 4.7.0, sonar-scanner-cli-4.7.0.2747-windows\binperlu ditambahkan ke path

Untuk memastikannya baik-baik saja, jalankan sonar-scanner -v di terminal Anda dan periksa apakah versinya akan dikembalikan dengan benar

Menganalisis proyek Flutter Anda

Sekarang, buat sonar-project.properties di folder root Flutter Anda dan tempelkan kode berikut.

Ganti sonar.projectKey , sonar.projectName , dan sonar.login dengan informasi yang diberikan saat membuat proyek Sonar sebelumnya.

Sekarang jalankan flutter test --machine --coverage > tests.output , ini akan menjalankan tes lokal Anda dan mengekspornya ke file sebelum diunggah oleh Sonar Scanner

Terakhir, jalankan sonar-scanner untuk memulai analisis dan mengunggahnya ke proyek Sonar Anda

Jika semuanya baik-baik saja, pesan serupa akan muncul di akhir.

Memeriksa hasilnya

Setelah menyelesaikan pemindaian, kembali ke Sonar dan tekan f5 atau masukkan proyek Anda lagi. Sekarang kita dapat melihat informasi umum utama tentang proyek tersebut.

Di tab ikhtisar, kita dapat melihat informasi lebih umum.

Jika Anda memerlukan detail lebih lanjut, jelajahi tab lainnya

Dan Voila, sudah selesai.

Seperti biasa, saya hanya menyebutkan penggunaan dasar alat ini, silakan periksa detail lebih lanjut tentang Docker, SonarQube, dan Flutter di halaman dokumentasi masing-masing.

Sekali lagi, berhati-hatilah dalam menggunakan gambar dan plugin yang disajikan dalam artikel ini, ini bukan plugin resmi dan gambar buruh pelabuhan Sonar ada di repo pribadi saya.

Semoga dapat bermanfaat bagi anda dan terima kasih sudah membacanya sampai disini, sampai jumpa lagi.