Regresyon testi, tanımı gereği, test edilmiş ve doğrulanmış bir ürüne yeni bir özelliğin eklenmesi ve/veya var olan özelliklerdeki bir hatanın düzeltilmesi sonrasında, testten geçmiş ürünün bu değişikliklerden olumsuz etkilenmediğini doğrulamak amacıyla yapılır.
Adı geçen bu değişiklikler kullanıcı arayüzü üzerindeki kozmetik değişiklikler olabileceği gibi, bir modülün çalışma şekline müdahale eden bir değişiklik de olabilir. Dolayısıyla yapılan bu değişikliğin halihazırdaki ürünü bozmadığından emin olmak gerekir.
Bir projenin yaşamı süresince ortaya çıkabilecek bazı regresyon testi ihtiyaçlarını ve neler yapılması gerektiğini aşağıdaki şemada örneklendirdim:
Peki nasıl bir test yaklaşımı ile regresyon testlerini planlamak gerekir?
Geliştirilen ürünün yapısına bağlı olarak farklı yaklaşımlar ortaya çıkacaktır. Ancak genel bir yaklaşım olarak şöyle bir yöntem izlenebilir (burada verilen yaklaşımlar örnektir, kendi proje ihtiyaçlarınıza göre çeşitlendirebilirsiniz):
Kozmetik Değişiklik | ||
Ne Yapıldı? | ||
Yazım Hatası Düzeltildi | ||
Resim, İkon, Konum Değiştirildi | ||
Font Değiştirildi | ||
Nasıl Doğrulanacak? | ||
Ürünü farklı platformlarda çalıştır (İşletim sistemi, internet gezgini, mobil cihaz) | ||
Yapılan değişikliğin istendiği gibi göründüğünü doğrula | ||
Yapılan değişikliğin aynı kullanıcı arayüzündeki diğer nesneleri bozmadığını doğrula | ||
Yetenek Üzerinde Değişiklik | ||
Ne Yapıldı? | ||
Kullanıcı Arayüzünde Bir Nesne Silindi / Eklendi | ||
Modüller Arası Arayüze Yeni Yetenek Eklendi / Varolan Silindi | ||
Bir sınıfın çalışma mantığı değiştirildi | ||
Veritabanı sorguları değiştirildi | ||
Rapor şablonu değiştirildi | ||
Kullanılan donanımlar değiştirildi | ||
... | ||
Nasıl Doğrulanacak? | ||
Kullanıcı arayüzünü test et, istenen sonuçta olduğunu doğrula | ||
Kullanıcı arayüzünü çağıran diğer arayüzleri test et, istenen sonuçta olduğunu doğrula | ||
Arayüzü kullanan modülleri test ederek, iletişimde bulunan modüllerin istenen girdi ve çıktıları sağladığını doğrula | ||
Değişiklik yapılan sınıfı birim test ile doğrula, bu sınıfı kullanan diğer sınıfları birim entegrasyon testi ile doğrula | ||
Veritabanına atılan sorguyu gözden geçir | ||
Ekran arayüzü üzerinden test yaparak veritabanına atılan sorguda doğru parametrelerin kullanıldığını doğrula | ||
Farklı sayıda girdiler kullanarak farklı sayıda sayfa içeren raporlar üret, içeriğin istenen sonuçları içerdiğini doğrula | ||
Donanıma özel olarak geliştirilmiş yeteneklerin olması durumunda, ilgili yeteneğin testlerini baştan sona tekrarla | ||
Yaklaşım | ||
Test mühendisi, deneyimine dayanarak hangi yeteneklerin etkilenmiş olabileceğinin listesini hazırlar, liste üzerinden tüm ilgili yetenekleri test eder, | ||
Proje ekibi (en az 1 yazılılm mühendisi ve 1 test mühendisi), tasarım ve kod üzerinden etkilenmiş olabilecek yeteneklerin listesini çıkarır, birim seviyesi ve üst seviye testler tekrar edilir, | ||
Test otomasyonu varsa, değişiklikten etkilenen testler güncellenir ve (tercihen, zaman varsa tüm) testler tekrarlanır |
No comments:
Post a Comment