Pendekatan Test Driven Development

Test Driven Development (TDD) adalah skema pengembangan perangkat lunak/ aplikasi dengan melakukan unit test terlebih dahulu sebelum melakukan pemrograman lebih lanjut atau production. Metode pengembangan yang “dilandasi” proses pengujian. Filosofinya, jika metode umumnya: "mengembangkan dulu, lalu diuji", metode ini kembalikannya: "diuji dulu, lalu mengembangkan kode".
Gambaran proses Test Driven Development / agiletestingframework.com

Mengapa Test Driven Development Penting ?
  1. Pendeteksian masalah / issue lebih cepat
  2. Feedback yang lebih cepat, sedikit demi sedikit namun terus-menerus
  3. Refactor code untuk menurunkan risiko dan masalah kedepannya
  4. Pengujian sebagai sumber informasi dengan dokumentasi berbagai keputusan

TDD dalam Alur Pengembangan Software

Pendekatan Test Driven Development

Siklus/Workflow Test Driven Development

Pendekatan Test Driven Development


Manfaat Implementasi Test Driven Development

Pendekatan Test Driven Development

Contoh Tools untuk Test Driven Development

Berikut ini beberapa contoh Tools untuk Test Driven Development:
  1. JUnit untuk Unit Testing
  2. Jmeter untuk Load / Performance Testing
  3. Mockito untuk Rest API Testing
  4. Dan lain-lain

Pengembang bisa melakukan Test Driven Development dengan Bahasa Pemrograman apapun, seperti Golang, Python, dan lain sebagainya.

Contoh Test Driven Development dalam Golang
  1. Mempersiapkan Environment dengan setup directory structure dan test function
  2. Command pada project structure : go test
  3. Refactor Code
  4. Command: go run
  5. Implementasi dengan menulis test menggunakan Golang Testing Packege
package main
import “testing1”
func TestJumlah(t * testing1.T) {
total: = Sum(7, 5)
if total != 12 {
t.Errorf(“Sum was incorrect, got: %f, want: %f.”, total, 12)
}
}
 
Kelebihan dan Kekurangan Test Driven Development

Pendekatan Test Driven Development

Alat-alat TDD

Pendekatan Test Driven Development

Kesimpulan
  1. Test Driven Development (TDD) adalah skema pengembangan perangkat lunak / aplikasi dengan melakukan unit testing sebelum production.
  2. Ada 3 tahap utama dalam Test Driven Development, yaitu Red, Green, dan Refactor.
  3. Beberapa manfaat yang akan diperoleh dari implementasi pendekatan Test Driven Development (TDD) adalah menurunkan biaya produksi, meningkatkan kualitas kode dan software, serta lebih produktif karena tim pengembang dapat terus melangkah sedikit demi sedikit.
  4. Contoh tools yang digunakan untuk implementasi Test Driven Development, antara lain JUnit untuk Unit Testing, Jmeter untuk Load / Performance Testing, dan Mockito untuk Rest API Testing.

Sumber Referensi : atlassian | atlassian | microsoft | guru99