BDD Nedir?

Zeynep Kösten
2 min readDec 5, 2020

--

Behavior Driven Development (BDD), bir yazılım projesinde geliştiriciler, iş analistleri veya teknik olmayan gerçek bir müşteri arasında işbirliğine teşvik eden çevik bir yazılım geliştirme sürecidir.

Projeye dahil olan herkesin, uygulamanın nasıl davranması gerektiğine dair ortak bir noktaya getirir. BDD ile düzyazı şeklinde müşterinin rahatlıkla anlayacağı iş parçaları oluşturuyor ve bunun üzerinde senaryolar üretiyoruz. Amaç dokümantasyonla otomasyonu birleştirmek diyebiliriz. Doküman yazar gibi test yazmamızı sağlar.

BDD yaklaşımı test süreçlerini bir adım öne alır ve TDD gibi kodlama başlamadan test senaryolarının yazılmasını destekler. User storyler üzerinden elde edilen senaryolar ile oluşturulacak bu test senaryoları sayesinde test maliyetlerini ciddi derece düşürür.

BDD, TDD yaklaşımının karmaşıklığını gidermek amacıyla ortaya çıkmıştır. Yazılım süreçlerinin daha test odaklı ilerlemesini sağlayan bir yaklaşımdır. User storyler üzerinden test senaryoları hazırlanarak yazılım tasarlanır.

Peki TDD yaklaşımı nedir kısaca bahsedelim.

TDD(Test Driven Development) ?

TDD, ana mantık olarak bir kod geliştirilirken kodu yazmadan önce test senaryolarının belirlenmesi ve bu senaryolara bağlı kalınarak kodun yazılması ve refactor edilmesini desteklemektedir. Bir test yazılır. Test başarısız olur. Kodu geliştirip test başarılı hale getirilir. Mevcut bütün testlerin başarılı olması sağlanır. Kod refactor edilir. TDD’de mutlaka test ilk sırada yazılmalıdır.

Bir sonraki yazımda BDD’nin 3 tane(Cucumber, Gauge, Specflow) bilinen implementasyonundan birisi olan Cucumber ile otomasyon yazımına değineceğim. Bir sonraki yazımda görüşmek üzere…

--

--