Son zamanlarda iyice popülerliği artan test driven development (test tabanlı geliştirme) konusunda birkaç yazı yazmak istedim. Öncelikle test driven development’ın ne olduğu ile başlamak istiyorum.
Nedir?
TDD geliştirilen veya geliştirilecek yazılımın otomatikleştirilmiş testlerinin yapılarak uygulanan bir yazılım geliştirme şeklidir. Otomatikleştirilmiş testler bir kez hazırlanır ve istenildiği zaman tekrar tekrar çalıştırılabilir. Bu şekilde kodun bir parçası değiştiğinde diğer parçaların ondan etkilenip etkinlemediğinden her seferinde emin olabiliyoruz. Otomatikleştirilmiş testlerin en basiti mouse ve klavye hareketlerini kaydederek tekrar tekrar yazılım üzerinde uygulamaktır. Mouse ve klavye hareketlerini bir kez kaydederek her seferinde tüm parçaları tek tek elle test etmek zorunda kalmıyoruz. Tabiki bu mouse, klavye hareketlerini kaydetmek çok antik bir yöntem. Elbette biz bunu yapmayacağız. Ancak otomatikleştirilmiş testlere en basit örnek budur demek istedim.
Continue reading →