Test Driven Development untuk seLaw yang lebih baik

Claudio Yosafat
PPL SeLaw
Published in
3 min readApr 3, 2019

Halo semuanya, gimana PPLnya? Seru tidak? Wah gak kerasa bentar lagi udah mau selesai saja ya. Pada kesempatan kali ini, saya akan membahas TDD atau Test Driven Development yang dilakukan pada kelompok seLaw ini. Untuk beberapa menit kedepan, kita akan membahas tentang apa itu TDD, bagaimana penggunaannya di PPL ini, dan apa yang harus dilakukan selanjutnya.

Apa itu Test Driven Development ?
Secara ringkas, test driven development itu adalah pertama kita membuat test lalu membuat fungsi untuk melewati test tersebut. Hal ini dilakukan secara berulang-ulang setiap membuat suatu fungsi baru dan tentu saja harus test sebelumnya harus sudah lewat juga. Kalau dilihat-lihat memang terlihat mudah tetapi dalam kenyataannya akan susah karena kita belum terbiasa untuk membuat test dahulu lalu membuat fungsinya.

Bagaimana penggunaan TDD di PPL sekarang ini oleh tim seLaw?
Untuk penggunaannya mungkin dapat dicontohkan dari apa yang sudah saya kerjakan. Sebelumnya kita harus mengetahui kalau TDD memiliki tiga fase yaitu Red, Green, Refactor.

src : http://marcabraham.files.wordpress.com/2012/04/06_red_green_refactor.jpg

Red : Ini merupakan fase dimana kita akan membuat test dan akan push ke GitLab PPLC4 sehingga pipeline-nya akan berwarna merah (makanya namanya RED). Berikut adalah salah satu contoh dari test yang dibuat pada sisi backend yang sudah saya buat

Test untuk mengecek apakah bisa mengambil semua lokasi
Berikut adalah contoh ketika kita mengepush test kita ke GitLab PPLC4 dan akan mengembalikan pipeline berwarna merah

Green : Ini merupakan fase dimana kita akan membuat fungsi terkait test yang sudah kita buat sebelumnya. Fungsi tersebut akan dibuat berdasarkan test yang sudah kita buat sebelumnya sehingga output dari fungsi ini akan membuat test kita yang sebelumnya menjadi berhasil dilewati. Fungsi yang dibuat juga tidak perlu langsung sangat bagus algoritmanya karena tujuan awalnya adalah untuk membuat fungsi yang sesuai dengan test. Untuk membuat fungsinya menjadi lebih baik akan dilakukan pada fase Refactor. Berikut adalah salah satu contoh fungsi untuk melewati test yang sudah kita buat di atas sebelumnya

Fungsi yang mengembalikan semua lokasi yang ada di database
Berikut adalah contoh dari pipeline yang berwarna hijau yang artinya lulus dari test

Refactor : Ini merupakan proses setelah kita sudah menyelesaikan test dan fungsi kita sehingga pipeline kita berwarna hijau. Fase refactor merupakan fase untuk melakukan perbaikan pada fungsi kita baik dari segi algoritmanya ataupun penamaannya. Refactor dilakukan setelah pipeline berwarna hijau artinya apabila kita melaukan refactor hasil dari refactor tidak boleh membuat pipeline menjadi warna merah kembali.

Apa yang selanjutnya dilakukan ?
Setelah kita mengetahui apa itu TDD ada baiknya kita untuk mencoba lebih sering melakukannya karena kita pasti secara tidak langsung akan membuat fungsi terlebih dahulu lalu membuat testnya. Hal ini dikarenakan kita belum terbiasa untuk membuat test terlebih dahulu maka dari itu harus banyak mencari referensi terkait cara membuat test yang baik.

Sekian dari saya, semoga dapat membantu kalian dalam memahami TDD.

CHEERS !

--

--