TDD (Test Driven Development)

sinem ünal
1 min readOct 7, 2021

--

Yazılım, içerisinde analiz,tasarım,test süreçleri ve geliştirme gibi birçok bölümden oluşur.Bu bölümlerden biri olan test süreçlerinin çoğu zaman bizi yavaşlattığını,zaman kaybına neden olduğunu düşünürüz ve gerekli önemi vermeyiz ancak uzun vadede ne kadar önemli olduğunu anlarız.Projeler büyüdükçe kodların kontrol edilebilmesi zayıflar tüm olasılıkların her an tespit edilebilmesi için test yazmak kaçınılmaz olur.

TDD (Test Driven Development)

TDD LifeCycle

TDD yaklaşımı kısaca kodun yazılmadan önce test senaryolarının yazılmasına dayanan bir yöntemdir.Test senaryolarının yazılabilmesi için de öncelikle kod tasarımının yapılması gerekir. Testleri daha kod yazmadan yazmak biraz kafa karışıklığına yol açabilir ancak ortada yazılmış bir kod yokken onun testini yazabiliyor olmak yapılacak işi gerçek anlamda anlamış ve kurgulamışız demektir.

Kodu önceden yazıp sonra testini yazmak TDD yaklaşımı değildir.

Süreç Nasıl İşler ?

  • Kod yazmadan kodun testi yazılır.
  • Test başarısız olur.
  • Testi başarılı bir şekilde çalıştırmaya yönelik en basit kod yazılır.
  • Kod refactor edilir.

Kodu teste oluşan başarısızlığı gidermek amacıyla yazmak yanlıştır.Kod tamamen ihtiyaca yönelik yazılmalıdır.

TDD Yaklaşımının Bize Sağladığı Avantajlar

  • Kodlar sırasıyla yazıldığı için yazılım geliştirmeyi kolaylaştırır.
  • Yeni eklenen ya da değiştirilen kodlar mevcut kodun işleyişini bozmaz.
  • Hatalar çok çabuk tespit edilir.
  • Kod yazıldığında test edilebilir olur.

--

--