Regresyon Testi Nedir?
İngilizce: Regression Testing
Yayın: · Son güncelleme:
Regresyon Testi Nedir? Kısaca
Regresyon testi, yazılıma yapılan yeni bir değişiklikten sonra daha önce sorunsuz çalışan özelliklerin hâlâ doğru çalıştığını doğrulamak için yapılan tekrar testidir. Amaç, düzeltilen ya da eklenen bir şeyin başka yeri bozmadığından emin olmaktır.

Regresyon testi nedir?
Regresyon, "geriye gitme" anlamına gelir. Yazılımda, eskiden çalışan bir özelliğin yeni bir değişiklik yüzünden bozulmasına regresyon denir. Regresyon testi de bu geri gidişi yakalamak için yapılır.
Her geliştirici bu durumu yaşamıştır. Bir hatayı düzeltirsiniz, başka bir yerde yenisi ortaya çıkar.
Ne zaman yapılır?
Kod her değiştiğinde. Yeni bir özellik eklendiğinde, bir hata düzeltildiğinde, bir kütüphane güncellendiğinde ya da sunucu ayarları değiştiğinde regresyon riski doğar.
Örneğin bir muhasebe programında fatura ekranına yeni bir döviz seçeneği eklendiğini düşünün. Değişiklik yalnız fatura ekranına dokunuyor gibi görünse de ortak bir hesaplama fonksiyonunu etkilediyse raporlardaki toplamlar da kayabilir. Regresyon testi, faturayla birlikte raporları, ödeme takibini ve dışa aktarmayı da yeniden kontrol eder.
Otomasyon neden şart?
Elle yapılan regresyon testi zamanla büyür ve yorucu hâle gelir. Uygulama büyüdükçe her sürümde yüzlerce adımı yeniden denemek günler alabilir. Bu tekrar eden iş, test otomasyonu için en uygun alandır.
Pratik bir yaklaşım şudur: bulunan her hata için onu yakalayan bir test yazın ve regresyon setine ekleyin. Böylece aynı hata bir daha geri gelirse anında fark edilir. Tüm seti her değişiklikte çalıştırmak çok uzun sürüyorsa, kritik akışlardan oluşan kısa bir seti her seferinde, tam seti ise gece çalıştırabilirsiniz.
Sıkça Sorulan Sorular
Regresyon testi ile yeniden test aynı şey mi?
Değil. Yeniden test, düzeltilen bir hatanın gerçekten giderildiğini kontrol eder. Regresyon testi ise o düzeltmenin başka yerleri bozmadığını kontrol eder. İkisi genelde birlikte yapılır.
Regresyon testleri kim yapar?
Genelde QA ekibi ya da test uzmanları sorumludur. Otomatik regresyon testleri ise CI/CD hattında her değişiklikte kendiliğinden çalışır.