What is Test-Driven Development?

Qurrata Adrianus
Dekowarehouse Project
2 min readApr 5, 2018

Selama mengikuti mata kuliah PPL, salah satu hal yang sering diucapkan kebanyakan orang adalah Test Driven Development (TDD). Tapi apakah Kamu sudah tahu, apa itu TDD?

Understanding TDD

Test-Driven Development (TDD) adalah salah satu pendekatan yang digunakan dalam pengembangan sebuah perangkat lunak. Pendekatan ini dikemukakan oleh Beck dan Astels, 2003 yang mengkombinasikan pendekatan Test First Development (TFD) dan proses refactoring. Dengan TDD, kamu diharuskan untuk berpikir ke depan untuk dibuatkan test-nya. Hal tersebut bertujuan agar pengembangan software dapat disesuaikan dengan kebutuhan dan keinginan.

TDD merupakan salah satu teknik yang tepat untuk digunakan saat menerapkan metodologi Agile. Dengan moto “Red, Green, Refactor”, pendekatan ini terdiri dari hal-hal berikut:

  • Red: Proses membuat test agar software tersebut failed.
  • Green: Mengimplementasikan software sehingga bisa memenuhi test
  • Refactor: Mengubah code untuk meningkatkan kualitas software.

Benefits of TDD

Ada beberapa manfaat dari penggunaan TDD dalam mengembangkan suatu software, yaitu:

  • Constant feedback dari unit test
  • Unit test yang digunakan tidak akan out-of-date karena berperan sebagai dokumentasi
  • Software cenderung lebih baik dan mudah dimaintain karena developer dapat membuat keputusan kapan saja dan tetap berpikir bahwa software tetap dapat berjalan
  • TDD dapat mengurangi waktu untuk debug

Implementation

Wah udah tahu pengertian dan manfaatnya, tapi implementasinya gimana ya? Nah, berikut adalah contoh implementasi TDD pada kelompok A04. Simak yaa!

Buat sebuah file test. Dalam hal ini saya menggunakan contoh dari task connecting database

File connectdb.js

Setelah membuat test, jika kamu jalankan, pasti tidak akan bisa. Karena ini adalah fase red. Jadi kita perlu mengimplementasikannya sebagai berikut.

implementasi connectdb.js

Sekarang kamu dapat melakukan test dengan menggunakan perintah berikut (test ini untuk React):

npm run test

Okay, that’s all ya guys! See ya dan selamat mengimplementasikan TDD yaa!

--

--