Regresyon Testi nedir?
REGRESYON TESTİ , yeni bir programın veya kod değişikliğinin mevcut özellikleri olumsuz şekilde etkilemediğini doğrulamak için bir tür yazılım testi olarak tanımlanır.
Regresyon Testi, mevcut işlevselliklerin düzgün çalışmasını sağlamak için yeniden yürütülen, halihazırda yürütülen test senaryolarının tam veya kısmi seçiminden başka bir şey değildir.
Bu test, yeni kod değişikliklerinin mevcut işlevler üzerinde yan etkileri olmamasını sağlamak için yapılır. En son kod değişiklikleri yapıldıktan sonra eski kodun çalışmaya devam etmesini sağlar.
Bu eğitimde öğreneceğiz
- Regresyon Testi İhtiyacı
- Regresyon Testi nasıl yapılır
- Regresyon testi için test senaryoları seçme
- Regresyon Test Araçları
- Regresyon Testi ve Yapılandırma Yönetimi
- Yeniden Test Etme ve Regresyon Testi Arasındaki Fark
- Regresyon Testindeki Zorluklar
- Bir Video ile Regresyon Testi Örneğinin Pratik Uygulaması
Regresyon Testi İhtiyacı
Regresyon Test İhtiyacı var kodunu değiştirmek için gerekliliktir ve biz modifiye kod yazılım uygulaması ya da olmasın diğer kısmını etkileyip etkilemediğini test gerektiğinde esas doğar. Ayrıca, yazılım uygulamasına yeni bir özellik eklendiğinde ve hata düzeltmenin yanı sıra performans sorunu düzeltmesi için de regresyon testi gereklidir.
Regresyon Testi nasıl yapılır
Regresyon Testi işlemini yapabilmek için öncelikle hataları tespit etmek için kodda hata ayıklamamız gerekir. Hatalar belirlendikten sonra, düzeltmek için gerekli değişiklikler yapılır, ardından kodun hem değiştirilmiş hem de etkilenen bölümlerini kapsayan test paketinden ilgili test senaryoları seçilerek regresyon testi yapılır.
Yazılım bakımı, geliştirmeleri, hata düzeltmelerini, optimizasyonu ve mevcut özelliklerin silinmesini içeren bir faaliyettir. Bu değişiklikler sistemin hatalı çalışmasına neden olabilir. Bu nedenle, Regresyon Testi gerekli hale gelir. Regresyon Testi aşağıdaki teknikler kullanılarak gerçekleştirilebilir:
Tümünü Yeniden Test Et
- Bu, mevcut test grubu veya paketindeki tüm testlerin yeniden yürütülmesi gereken Regresyon Testi yöntemlerinden biridir. Bu, çok büyük zaman ve kaynak gerektirdiği için çok pahalıdır.
Regresyon Testi Seçimi
Regresyon Testi Seçimi , değiştirilen kodun yazılım uygulamasını etkileyip etkilemediğini test etmek için test paketinden seçilen bazı test senaryolarının yürütüldüğü bir tekniktir. Test senaryoları, daha sonraki regresyon döngülerinde kullanılabilen yeniden kullanılabilir test durumları ve sonraki döngülerde kullanılamayan eski test durumları olmak üzere iki bölüme ayrılmıştır.
Test Durumlarının Önceliklendirilmesi
- İş etkisine, kritik ve sık kullanılan işlevlere bağlı olarak test senaryolarını önceliklendirin. Önceliğe göre test senaryolarının seçimi, regresyon testi paketini büyük ölçüde azaltacaktır.
Regresyon testi için test senaryoları seçme
Sektör verilerinden, müşteriler tarafından bildirilen hataların büyük bir kısmının yan etkiler yaratan son dakika hata düzeltmelerinden kaynaklandığı ve dolayısıyla regresyon testi için Test Senaryosunu seçmenin bir sanat olduğu ve o kadar da kolay olmadığı bulundu. Etkili Regresyon Testleri, aşağıdaki test senaryoları seçilerek yapılabilir -
- Sık sık kusurları olan test durumları
- Kullanıcılar için daha görünür olan işlevler
- Ürünün temel özelliklerini doğrulayan test senaryoları
- Daha fazla ve yeni değişikliklere uğrayan İşlevselliklerin test vakaları
- Tüm Entegrasyon Testi Durumları
- Tüm Karmaşık Test Durumları
- Sınır değer test durumları
- Başarılı test senaryoları örneği
- Başarısızlık testi durumlarının bir örneği
Regresyon Test Araçları
Yazılımınız sık sık değişikliğe uğrarsa, regresyon testi maliyetleri artacaktır. Bu gibi durumlarda, test senaryolarının manuel olarak yürütülmesi, test yürütme süresini ve maliyetleri artırır. Regresyon testi durumlarının otomasyonu, bu gibi durumlarda akıllıca bir seçimdir. Otomasyonun kapsamı, ardışık regresyon döngüleri için yeniden kullanılabilir kalan test senaryolarının sayısına bağlıdır.
Yazılım mühendisliğinde hem fonksiyonel hem de regresyon testi için kullanılan en önemli araçlar şunlardır:
Selenium : Bu, web uygulamalarını otomatikleştirmek için kullanılan açık kaynaklı bir araçtır. Selenyum, tarayıcı tabanlı regresyon testi için kullanılabilir.
Hızlı Test Uzmanı (QTP) : HP Hızlı Test Uzmanı, işlevsel ve gerileme testi durumlarını otomatikleştirmek için tasarlanmış otomatik bir yazılımdır. Otomasyon için VBScript dilini kullanır. Veriye dayalı, Anahtar Kelime tabanlı bir araçtır.
Rational Functional Tester (RFT) : IBM'in rasyonel işlevsel test cihazı, yazılım uygulamalarının test durumlarını otomatikleştirmek için kullanılan bir Java aracıdır. Bu, öncelikle regresyon testi durumlarını otomatikleştirmek için kullanılır ve ayrıca Rational Test Manager ile entegre olur.
Regresyon Testi ve Yapılandırma Yönetimi
Regresyon Testi sırasında Yapılandırma Yönetimi, bir kodun sürekli olarak değiştirildiği Çevik Ortamlarda zorunlu hale gelir. Etkili regresyon testlerini sağlamak için aşağıdakilere dikkat edin:
- Regresyon testine tabi tutulan kod, bir konfigürasyon yönetim aracı altında olmalıdır
- Regresyon testi aşaması sırasında kodda hiçbir değişikliğe izin verilmemelidir. Regresyon test kodu, geliştirici değişikliklerine karşı bağışık tutulmalıdır.
- Regresyon testi için kullanılan veritabanı izole edilmelidir. Hiçbir veritabanı değişikliğine izin verilmemelidir
Yeniden Test Etme ve Regresyon Testi arasındaki fark:
Yeniden test, kodun düzeltildiğinden emin olmak için işlevselliği veya hatayı tekrar test etmek anlamına gelir. Düzeltilmezse, Kusurun yeniden açılması gerekir. Düzeltilirse, Kusur kapatılır.
Gerileme testi, yeni kodun yazılımın diğer bölümlerini etkilemediğinden emin olmak için yazılım uygulamanızı bir kod değişikliğine uğradığında test etmek anlamına gelir.
Ayrıca, buradaki farklılıkların tam listesine göz atın.
Regresyon Testindeki Zorluklar:
Aşağıdakiler, regresyon testi yapmak için başlıca test problemleridir:
- Ardışık regresyon çalıştırmalarıyla, test grupları oldukça büyük hale gelir. Zaman ve bütçe kısıtlamaları nedeniyle, tüm regresyon testi paketi yürütülemez
- Maksimum Test kapsamı elde ederken test paketini en aza indirmek bir zorluk olmaya devam ediyor
- Regresyon Testlerinin sıklığının belirlenmesi, yani her değişiklikten veya her derleme güncellemesinden sonra veya bir dizi hata düzeltmesinden sonra, zorlu bir iştir.
Bir Video ile Regresyon Testi Örneğinin Pratik Uygulaması
Videoya erişilemiyorsa burayı tıklayın
Sonuç:
Etkili bir regresyon stratejisi, kuruluşlara hem zamandan hem de paradan tasarruf sağlar. Bankacılık alanındaki örnek olaylardan birine göre, regresyon, hata düzeltmelerinde% 60'a kadar (regresyon testleri tarafından yakalanacaktı) zaman ve parada% 40'a kadar tasarruf sağlıyor