Page 171 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 171
Yazılım Testleri ve Test Odaklı Geliştirme Yaklaşımının Kullanımı | 171
Giriş
Yazılım sektöründe şirketlerin ayakta kalabilmesi için ürün kalitelerini korumaları
ve müşteri, kullanıcı memnuniyet oranlarını sürekli yüksek tutmaları gerekmekte-
dir. Ürünün kalitesi, ürünün hatalardan arındırılmış olması şeklinde karşımıza çık-
maktadır. Şirketlerin, ürünü güncel ve kaliteli bir şekilde tutabilmesi onu sürekli
olarak test etmelerinden geçer.
Yazılım testi, yazılım geliştirme yaşam döngüsünün (SDLC) en önemli aşamala-
rından biridir. Testler yazılımın, kendisinden beklenen özellikleri karşılayıp kar-
şılamadığını incelemek amacıyla yapılır. Bu şekilde yazılımdaki hatalar bulunup
düzeltilebilir ve gereksinimlere uygun hale getirilebilir. Yazılım testi hatayı erken
tespit etme ve hata önleme faaliyetleri içerdiği için uzun vadede maliyeti düşü-
rür. Aynı zamanda ürünün kalitesini yükseltir, müşterinin memnuniyetini ve güve-
nini kazanmayı sağlar. Iyi yazılmış, okunaklı testler; incelediğimiz fonksiyona veya
bileşene, hangi girdiler verildiğinde hangi çıktıların alacağını gösteren örnekler
barındırır. Bu yüzden test edilen kodun da iyi bir dokümantasyonu sayılabilir.
Yazılım geliştirme yaşam döngüsü; gereksinim analizi, tasarım, geliştirme, test ve
bakım olmak üzere birçok aşamadan oluşmaktadır. Her aşama da testten geç-
mektedir. Bu nedenle çeşitli test seviyeleri ve teknikleri vardır. Üzerinde çalışılan
projelerde müşterilere, son kullanıcılara; kaliteli, hatadan arındırılmış ve müşteri
memnuniyetinin yüksek seviyelerde tutulabildiği ürünler sunmak istenir. Bu ne-
denle ürün üzerinde, test seviyelerini ve tekniklerini uygulamak gerekmektedir.
Yazılım testleri yazılıp, uygulanırken birçok farklı yaklaşım bulunmaktadır. Bu yak-
laşımlardan bazıları test odaklı geliştirme, davranış odaklı geliştirme, kabul testi
odaklı geliştirmedir.
Ekstrem programlama (XP) gibi çevik süreçlerde sistem hatalarının oluşmasını
engellemek ve kaliteyi yüksek tutabilmek için test odaklı geliştirme yaklaşımı
geliştirilmiştir. Test odaklı geliştirme yaklaşımı bir test türü değildir. Daha çok ya-
zılım testlerini uygulamak için izlenen bir yoldur. Test odaklı geliştirme; kodlama,
test ve tasarımın birlikte çalıştığı bir programlama tarzını ifade eder. Test odaklı
geliştirme yaklaşımında önce test kodlarının yazılması daha sonra yazılım kod-
larının yazılması gerekmektedir. Bu geliştirme metodunda testler hazırlanırken
sistemin nasıl çalışması gerektiği düşünüldüğü için sadece gerekli olan yapılar
için zaman harcanır. Bu çalışmada yazılım testleri, test yöntemleri ve yaklaşımları
incelenerek, bir yazılım test yaklaşımı olarak TDD’nin yazılım geliştirme sürecinde
nasıl uygulanacağı açıklanmıştır.