Cukup sering manfaat menggunakan TDD dianggap sebagai keuntungan 'jangka panjang' - kode keseluruhan akan lebih terstruktur, lebih dapat diuji, keseluruhan lebih sedikit bug yang dilaporkan oleh pelanggan, dll.
Namun, di mana manfaat jangka pendek menggunakan TDD? Adakah yang benar-benar berwujud dan mudah diukur?
Apakah penting untuk memiliki manfaat jangka pendek yang jelas (atau bahkan tidak jelas secara kuantitatif), jika keuntungan jangka panjang dapat diukur?
Dalam jangka pendek, maksud Anda adalah proyek kecil, atau apakah yang Anda maksudkan adalah hari-hari awal proyek?
Saya berkeyakinan bahwa mendapatkan tes terintegrasi sambil meletakkan dasar awal akan membayar dividen segera karena Anda telah memverifikasi pilar di mana seluruh sisa proyek akan berdiri. Saya cenderung mendesain dari atas ke bawah dan menerapkan dari bawah ke atas sehingga ini masuk akal untuk cara saya bekerja.
Jika sekarang Anda hanya menangkap satu ketidakkonsistenan, pekerjaan Anda baru saja membayar sendiri dengan tidak harus men-debug program yang lebih kompleks nantinya.
Plus proyek Anda sudah disiapkan untuk pengujian dan Anda tidak perlu merombak rig nanti.
sumber
Manfaat jangka pendek yang saya temukan dari TDD adalah bahwa saya tidak harus berkonsentrasi terlalu keras pada apa yang saya coba capai.
Jika saya terganggu dari pekerjaan saya, tanpa TDD diperlukan beberapa menit untuk mengingatkan diri saya di mana saya berada ketika saya kembali ke tugas.
Dengan TDD saya hanya menjalankan tes melihat yang gagal dan langsung saya tahu apa yang saya coba capai. Saya bekerja lebih cepat dengan lebih sedikit sakit otak.
sumber