Memasang Coverage Codeclimate Pada Golang Dengan Github Actions

Firman
JDS Engineering
Published in
4 min readMay 3, 2021
Image from https://coletiv.com/

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

Codeclimate

Lalu akan masuk ke halaman dashboard codeclimate nya dan klik pada bagian open source, untuk sinkronisasi repo github kita ke codeclimate

Dashboard 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

Repositories

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

Test Coverage

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.

Test Reporter ID

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:

menu setting github

Lalu pada tab sebelah kiri klik Secrets sehingga muncul seperti pada gambar dibawah ini:

Secrets Menu

Setelah masuk halaman Secrets klik New respository secret di atas kanan seperti pada gambar dibawah ini:

New repository secret

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.

New 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:

Github actions folder

Setelah itu masukan code seperti ini di file go.yml:

go.yml

Lalu buat file dengan nama Makefile di folder root kita dan isi codenya seperti ini:

Makefile

Semoga bermanfaat :)

Contoh repository:

--

--