BDD vs TDD - Test-Driven Development
BDD, Davranış Odaklı Geliştirme anlamına gelir.
| BDD | TDD - Test-Driven Development | |
|---|---|---|
| Definition | Davranış Odaklı Geliştirme (BDD), kullanıcı perspektifinden sistem davranışlarını tanımlayarak işbirliğini artırmayı amaçlayan bir yazılım geliştirme sürecidir ve doğal dilde yazılmış özellikler kullanır. | Test-Driven Development (TDD), kod işlevselliği geliştirilmeden önce testlerin yazılmasını vurgulayan bir programlama yaklaşımıdır. Bu yöntem, kodun belirlenen gereksinimleri karşıladığından emin olur ve hataları önler. 📚 Köken Test-Driven Development (TDD), 1990'ların sonlarında Kent Beck tarafından Extreme Programming'in bir parçası olarak geliştirilmiştir. |
| Categories | bdd, collaboration, dev, gherkin, it, software development, testing | software development, testing |
BDD nedir?
BDD, Davranış Odaklı Geliştirme anlamına gelir.
Tanım
Davranış Odaklı Geliştirme (BDD), kullanıcı perspektifinden sistem davranışlarını tanımlayarak işbirliğini artırmayı amaçlayan bir yazılım geliştirme sürecidir ve doğal dilde yazılmış özellikler kullanır.
Bağlam
BDD, Test Odaklı Geliştirme (TDD)’den evrilmiştir ve gereksinimlere ve sistem davranışına daha kullanıcı odaklı bir yaklaşım sunar. Bu yaklaşım, yazılım geliştirmenin son kullanıcının beklentileri ve ihtiyaçlarıyla daha iyi uyumlu olmasını sağlar.
TDD’den BDD’ye Evrim
TDD’den BDD’ye geçiş, sadece kod üzerine kurulu testlerden, kullanıcı perspektifinden sistem davranışına dayalı testlere odak değişikliği ile karakterize edilir. Bu, kullanıcının ihtiyaçlarını ve sistemin bu ihtiyaçları nasıl karşılaması gerektiğini daha derinlemesine anlamayı kolaylaştırır.
Gherkin Dili
BDD, hem teknik hem de teknik olmayan ekip üyelerinin anlayabileceği şekilde özellikler yazmak için Gherkin dilini kullanır. Bu, özelliklerin ortak bir doğru kaynağı olarak işlev görmesini sağlayarak iletişimi iyileştirir ve yanlış anlamaları azaltır.
TDD - Test-Driven Development Nedir?
Kod işlevselliğini geliştirmeden önce testler yazmayı vurgulayan bir programlama yaklaşımıdır.
Tanım
Test-Driven Development (TDD), kod işlevselliği geliştirilmeden önce testlerin yazılmasını vurgulayan bir programlama yaklaşımıdır. Bu yöntem, kodun belirlenen gereksinimleri karşıladığından emin olur ve hataları önler.
📚 Köken
Test-Driven Development (TDD), 1990'ların sonlarında Kent Beck tarafından Extreme Programming'in bir parçası olarak geliştirilmiştir.
Yinelemeli Süreç
TDD, bir test ekleyerek, testin başarısız olması, testi geçecek kodun yazılması ve ardından kodun yeniden düzenlenmesi döngüsünü izler.
Odak
TDD, sistemin adım adım ve yüksek test kapsamı ile inşa edilmesini sağlamak için her seferinde küçük kod birimlerini test etmeye odaklanır.
Refactoring Döngüsü
Ayrıca 'Kırmızı-Yeşil-Yeniden Düzenle' döngüsü olarak bilinir, burada kod başarısız olan testi geçecek şekilde yazılır ve daha sonra yapısını iyileştirmek için yeniden düzenlenir.