Memasang Coverage Codeclimate Pada Golang Dengan Github Actions
Lanjut dari hasil riset github actions, kali ini kita akan membahas tentang bagaimana cara memasang hasil test coverage code kita menggunakan bahasa pemrograman golang dan di publish ke situs codeclimate test result coverage nya.
Test Coverage — yaitu sebagai metrik dalam pengujian perangkat lunak yang mengukur jumlah pengujian yang dilakukan oleh serangkaian pengujian. Ini akan mencakup pengumpulan informasi tentang bagian mana dari program yang dieksekusi saat menjalankan rangkaian pengujian untuk menentukan cabang pernyataan kondisional mana yang telah diambil.
Sederhananya, ini adalah teknik untuk memastikan bahwa pengujian kita untuk menguji kode atau berapa banyak kode yang kita gunakan dengan menjalankan metode pengujian.
Praktek — pastikan kita sudah mendaftar terlebih dahulu di situs codeclimate, sebenarnya ada beberapa situs untuk code coverage ini, seperti codecov.io dan coveralls.io kenapa saya memilih codeclimate? karena supaya satu paket saja antara maintainability dan coverage di situs yang sama.
Tahap Pertama — siapkan repo github yang bersifat publik disini saya akan mencontohkan menggunakan repo sapawarga phonebook service, karena riset dan implementasinya di repo tersebut.
Setelah itu masuk ke situs codeclimate login terlebih dahulu dan pilih bagian quality seperti pada gambar di bawah ini
Lalu akan masuk ke halaman dashboard codeclimate nya dan klik pada bagian open source, untuk sinkronisasi repo github kita ke codeclimate
Setelah itu klik add repository lalu pilih repository yang kita buat tadi dan klik add repo untuk di sinkronisasi kan dengan codeclimate dan tunggu hingga prosesnya selesai
Setelah sinkronisasi selesai kita akan mengambil token reporter coverage codeclimate yang berguna untuk, menyimpan hasil test coverage di github actions lalu di upload ke codeclimate sehingga result nya bisa keliatan apakah hasil coverage 100% atau 80% semakin tinggi berarti semakin bagus perhitungan nya.
Cara nya klik repo settings terus pilih Test Coverage di sebelah kiri
Di menu test coverage scroll kebawah dan disitu ada bagian TEST REPORTER ID, copy isi token nya untuk nanti di masukan di github actions ketikan melakukan CI/CD.
Sampai disini setup untuk codeclimate sudah selesai tahap selanjutnya yaitu setup di githubnya.
Tahap Kedua — masuk ke github dan pilih repo yang sudah kita sinkronisasikan dengan codeclimate lalu masuk ke tab Settings seperti pada gambar dibawah ini:
Lalu pada tab sebelah kiri klik Secrets sehingga muncul seperti pada gambar dibawah ini:
Setelah masuk halaman Secrets klik New respository secret di atas kanan seperti pada gambar dibawah ini:
Lalu isi name seperti pada gambar dibawah ini dengan nama CC_TEST_REPORTER_ID penamaan name ini bisa sesuai dengan selera teman-teman tidak wajib sama dengan contoh yang saya buat, akan tetapi nanti harus disesuaikan dengan script github actions kita.
Terus pada bagian value isi dengan Test Reporter ID codeclimate kita tadi lalu klik button Add Secret.
Sampai disini bagian kedua sudah selesai untuk konfigurasi di codeclimate dan githubnya, langkah selanjutnya yaitu tinggal coding di repo kitanya dan menambhakan script github acions nya.
Tahap Ketiga — buat folder di root projek kita dengan nama .github lalu di dalam folder tersebut buat folder dengan nama workflows dan di dalam folder workflows buat file dengan nama go.yml seperti pada gambar dibawah ini:
Setelah itu masukan code seperti ini di file go.yml:
Lalu buat file dengan nama Makefile di folder root kita dan isi codenya seperti ini:
Semoga bermanfaat :)
Contoh repository: