when stop testing
Testte çıkış kriterleri:
'İyi başlamak yarısı bitti' - Yazılım testleri dahil her yerde geçerlidir.
Genellikle projenin başında yazılım test uzmanlarının çok hevesli olduğunu görüyoruz. Biz yaratırız test belgeleri Test Stratejisi, Test Planı veya Test Örnekleri gibi hevesle ve coşkuyla.
Ardından yazılımı bir BANG ile test etmeye başlarız! Bu, yalnızca projenin başında bulduğumuz ilginç kusurlarla güçlendirilmiştir. Onları çözmek sadece başarımıza katkıda bulunacaktır.
Bir sürü kusur bulup ilk çalıştırmayı tamamladığımızda bir sonraki aşamaya geçiyoruz. İkinci koşuya geldiğimizde biraz rahatlıyoruz ve genel insan eğilimi olduğu gibi aynı şeyi test etmekten sıkılmak ikinci çalışmada.
kullanılacak sahte e-posta adreslerinin listesi
Birçok testçi bunun olduğunu hissediyor monoton çalışma daha sonraki çalıştırmalarda ve aynı yazılımı tekrar tekrar test etmeye olan ilginizi kaybetmeye başlayın. Belki üçüncü koşuma ulaştığımızda, bir soru bizi rahatsız etmeye başlar ve o da 'Yazılımı Test Etmeyi Ne Zaman Durdurmalıyız?'
Bahse girerim aynı şekilde hissetmiş ve en az bir kez “Testi ne zaman bırakmalısın?” Diye sormuş olmalısın. Sorunun şu olduğunu söyleyebilirim 'Testi ne zaman, nerede ve nasıl durdurmalı?' :)
Kavramsal olarak okuduk ve birçok test görevlisi, 'Testi ne zaman durdurmalı?' Sorusuna karar verecek belirli bir koşul veya denklem olamayacağına inanıyor. Bu soruya karar vermeden önce dikkate alınması gereken bir dizi faktör var.
Bugünün makalesinde, test döngümüzde bu testin yeterli olduğunu söyleyebileceğimiz bir noktaya geldiğimizde test faaliyetlerinin nasıl sonuçlandırılacağına dair düşüncelerimi paylaşmak istiyorum. Bunu, tipik bir test döngüsünde birkaç gerçek hayat örneğinin yardımıyla yapacağız.
Ne öğreneceksin:
- Test Ne Zaman Yeterli?
- Tüm kusurlar bulunduğunda durmak: Mümkün mü?
- Testi durdurma kararı: Çıkış kriterleri
- Tamamlama veya Çıkış Kriterleri nedir?
- Çıkış Kriterlerinde neler bulunmalıdır?
- Test şu durumlarda durdurulabilir:
- Sonuç:
- Önerilen Kaynaklar
Test Ne Zaman Yeterli?
Bu kadar testin yeterli olduğunu ne zaman söyleyebiliriz? Test hiç tamamlanabilir mi?
Bu soruları cevaplamak için, test faaliyetlerini baştan sona analiz etmemiz gerekecek. Lütfen şunu unutmayın - Bu etkinlikleri sıradan birinin terimleriyle tanımlayacağım - Süslü bir teknik yolla değil.
Yeni bir projeyi test etmeye başladığınızı düşünelim.
İlk Faaliyetler:
- Test ekibi gereksinimleri alır.
- Test ekibi başlar planlama ve tasarlama.
- İlk Test belgeleri hazır ve gözden geçirildi.
Test Çalıştırması # 1)
- Test ekibi test yürütmeye başlar Geliştirilmiş ürünü aldıktan sonra.
- Test aşaması sırasında, yazılımı kırmak ve birçok kusur bulmak için çeşitli senaryolar yürütürler. (Ayrıca, buradaki kusur oranı daha yüksektir çünkü uygulama yeni ve ilk kez değerlendiriliyor.)
- Kusurlar geliştiriciler tarafından giderildi ve yeniden test için test ekibine geri döndü.
- Test ekibi, kusurları yeniden test eder ve regresyonu gerçekleştirir.
- Yüksek öneme sahip kusurların çoğu çözüldüğünde ve yazılım kararlı göründüğünde, geliştirme ekibi sonraki sürümü yayınlar.
Test Çalıştırması # 2)
- Test ekibi ikinci test çalıştırmasına başlar ve benzer faaliyetler 1. İşlem olarak yürütülür.
- Bu süreçte ikinci test çalışması sırasında, birkaç kusur daha yakalanır.
- Kusurlar geliştiriciler tarafından giderildi ve yeniden test için test ekibine geri döndü.
- Test ekibi hataları yeniden test eder ve gerçekleştirir gerileme .
Bu sonsuza kadar devam edebilir. Yazılımdaki tüm kusurlar bulunana ve yazılım hatasız hale gelene kadar 3'ü çalıştırın, 4'ü çalıştırın.
Bu faaliyetler için bir akış şeması çizmek istersek, kabaca aşağıdaki gibi görünecektir:
Yukarıdaki akış şemasından, yazılımdaki tüm kusurlar bulunana kadar testin devam edebileceği sonucuna varabiliriz.
Ama soru şu - Yazılımdaki her bir kusuru bulmak mümkün mü? Bu milyon dolarlık sorunun cevabını bulmaya çalışalım :).
Tüm kusurlar bulunduğunda durmak: Mümkün mü?
Çoğu yazılım karmaşıktır ve muazzam bir test kapsamına sahiptir. Yazılımdaki tüm kusurları bulmak imkansız değildir, ancak sonsuza kadar sürecektir.
Yazılımda birçok hata bulduktan sonra bile, Şu anda hiç kimse yazılımın hatasız olduğunu garanti edemez. Testleri tamamladığımızı, yazılımdaki tüm kusurları bulduğumuzu ve daha fazla hata içermediğini güvenle söyleyebileceğimiz bir durum olamaz.
Dahası, testin amacı yazılımdaki her bir kusuru bulmak değildir. Yazılım testinin amacı, yazılımın amaçlandığı gibi çalıştığını, onu kırarak veya mevcut davranışı ile beklenen davranış arasında sapma bularak kanıtlamaktır.
Yazılımda sınırsız kusur vardır ve bu nedenle, hangi kusurun son olduğunu asla bilemeyeceğimiz için tüm kusurlar bulunana kadar onu test etmek pratik değildir. Gerçek şu ki, testlerimizi tamamlamak için yazılımdaki tüm kusurları bulmaya güvenemeyiz.
Dürüst olmak gerekirse, testler sonsuzdur ve test döngüleri, ne zaman ve nerede durdurulacağına karar verilinceye kadar devam edecektir. Şimdi testi durdurmaya karar vermek daha da karmaşık hale geliyor. 'Tüm kusurlar bulunduğunda durmak' testi durdurmak için bir kriter değilse, o zaman hangi temele göre karar verilmelidir?
Testi durdurma kararı: Çıkış kriteri
Şimdi anlamaya çalışalım - Test faaliyetlerini sonuçlandırırken göz önünde bulundurulması gereken en önemli faktörler nelerdir? Testi durdurma kararının çoğunlukla şunlara bağlı olduğunu hissediyorum: Test Süresi, Bütçesi ve Kapsamı.
En yaygın yaklaşım, Zaman / Bütçe tükendiğinde veya tüm test senaryoları yürütüldüğünde durmaktır. Ancak bu yaklaşımla test kalitesinden ödün vermiş olacağız ve bu da yazılım konusunda yeterince güven vermeyecektir; Nasıl?
Bir bakalımmisal.
Test Senaryosu:
Bir yazılım modülünü test ettiğinizi varsayalım. Bunu karşılamak için size belirli bir bütçe tahsis edilmiştir. Proje zaman çizelgeleri bir aylıktır. Toplam Test Senaryoları 200'dür. Bu modülü test eden tek kişi sizsiniz.
Senaryo 1)
1. hafta: Gösterici / önem derecesi 1 kusurunu 1. günde bulursunuz ve tüm test 3 gün boyunca engellenir. Bu nedenle Önem Derecesi 1 kusur çözülene kadar senaryolardan hiçbirini uygulayamazsınız. 3 gün kaybettikten sonra, engelleyici çözülür ve infazınıza devam edersiniz.
Haftanın sonunda, birkaç tane daha önemli olan 20 senaryoyu tamamlarsınız. öncelikli kusurlar .
Hafta 2: Hataları bulmaya daha fazla odaklanarak yazılımı test etmeye başlıyorsunuz. İkinci haftada birkaç tane daha Önem Derecesi 1, Önem Derecesi 2 ve Önem Derecesi 3 kusur açarsınız ve haftanın sonunda 70 Senaryoyu kapsayabilirsiniz.
3. Hafta: 3'ün başındardhafta tüm yüksek öncelikli kusurları çözdüğünüz için, bekleyen senaryoların yürütülmesiyle birlikte artık test kovasına düşen tüm kusurları yeniden test etmeniz gerekir. İyi ilerlemeyle devam ederek, ek kusurlarla birlikte 120 senaryoyu ele alıyorsunuz.
Bu zamana kadar tüm yüksek öncelikli kusurlar zaten bulundu ve rapor edildi. Yani, artık sadece Önem Derecesi 3 kusurlarınız kaldı.
4. hafta: 4. haftaya kadar, açılan kusurların çoğunu ve kalan 80 Senaryoyu yeniden test etmeniz gerekir. Bununla 4. haftanın sonunda, tüm Yüksek ve Orta öncelikli kusurların giderildiği ve yeniden test edildiği 180'e kadar senaryoyu tamamlayabilirsiniz.
Bu bilgileri Tablo formuna koymak:
Haftalar | Gerçekleştirilen Test Faaliyetleri | Haftanın sonunda sonuç |
---|---|---|
1. hafta | • 1. Gün - Bulunan Durdurucu Arızasını Göster. • 1. Günde bulunan Önem Derecesi 1 kusuru nedeniyle test Engellenmiştir. • Engelleyici kusuru 4. Günde çözüldü. • Test Yürütme 1. haftanın sonuna kadar devam etti. | • Yüksek Öncelikli / Kritik Kusurlar açıldı. • 20 Senaryo tamamlandı. |
Hafta 2 | • Kusur bulmaya daha fazla odaklanın. • Kalan Test Senaryolarının yürütülmesi. • Sabit kusurların yeniden test edilmesi. | • Önem Derecesi 1, Önem Derecesi 2 ve Önem Düzeyi 3 kusurları daha az açıldı. • Kapsanan toplam 70 Senaryo. |
3. Hafta | • Tüm yüksek öncelikli kusurların yeniden test edilmesi. • Kalan Test Senaryolarının Yürütülmesi. • Yalnızca Önem Derecesi 3 kusurlar bulunacak. | • Önem Derecesi 1, Önem Derecesi 2 ve Önem Düzeyi 3 kusurları daha az açıldı. • Kapsanan toplam 120 Senaryo. |
4. hafta | • Tüm Yüksek ve Orta Öncelikli Kusurların Yeniden Test Edilmesi. • Kalan Test Senaryolarının yürütülmesi. | • Önem Derecesi 3 olan birkaç kusur daha açıldı. • Kapsanan toplam 180 Senaryo. |
Burada durmalı mısın?
Tükenmiş olmanın nedeni Tamamen Test Süresi ve yüksek öncelikli kusurların çoğunu bildirmiş ve düzeltmiş. Bu noktada durmak size yazılım konusunda güven verecek mi? Gerçekten aşağıdaki nedenlerden dolayı değil:
- Senaryolar tam olarak uygulanmamaktadır.
- Çok az akış bir kez bile test edilmez.
- Kapsanan tüm Senaryolar yalnızca bir kez yürütülür.
- Yazılımda hala kusurlar var.
- Regresyon kapsanmaz.
Senaryo 2)
1. hafta: 1. günde Önem Derecesi 1 kusur buluyorsunuz ve tam test 3 gün boyunca engelleniyor. Bu nedenle, Önem Derecesi 1 Kusur çözülene kadar senaryolardan hiçbirini yürütemezsiniz. 3 gün kaybettikten sonra engelleyici çözülür ve infazınıza devam edersiniz.
Haftanın sonunda, birkaç kusurla 20 senaryoyu tamamlarsınız. Bu hafta Senaryo 1 ile aynı kaldı.
Hafta 2: İkinci hafta içinde Önem Derecesi 1, Önem Derecesi 2 ve Önem Derecesi 3 kusurlarından birkaç tane daha açarsınız, ancak odak noktası 1. haftadan itibaren birikmiş iş yığınını kapsayacak şekilde daha fazla senaryoyu kapsamaktır. Hafta sonunda 120 Senaryoyu ele alabilirsiniz.
3. Hafta: 3'ün başındardhafta tüm açık kusurları çözdüğünüz için, bekleyen senaryoların yürütülmesiyle birlikte artık bir test kovasına konan tüm kusurları yeniden test etmeniz gerekir. Hala iyi bir ilerleme ile devam eden sonunda tamamlanan senaryo sayısı, ek kusurlarla birlikte 200 olur.
Artık yalnızca Önem Derecesi 2 ve Önem Derecesi 3 kusurlarını bildirebilirsiniz.
ürün testçisi olmak istiyorum
Bu bilgileri Tablo formuna koymak:
Haftalar | Gerçekleştirilen Test Faaliyetleri | Haftanın sonunda sonuç |
---|---|---|
1. hafta | • 1. Gün - Bulunan Durdurucu Arızasını Göster. • 1. Günde bulunan Önem Derecesi 1 kusuru nedeniyle test Engellenmiştir. • Engelleyici Hatası 4. Günde Çözüldü. • Test Yürütme 1. hafta sonuna kadar devam etti. | • Yüksek Öncelikli / Kritik Kusurlar açıldı. • 20 Senaryo tamamlandı. |
Hafta 2 | • Önceki haftadan kalan İş Listesini kapsayacak şekilde daha fazla senaryo yürütmeye odaklanılır. • Sabit kusurların yeniden test edilmesi. | • Önem Derecesi 1, Önem Derecesi 2 ve Önem Düzeyi 3 kusurları daha az sayıda Açıldı. • Kapsanan toplam 120 Senaryo. |
3. Hafta | • Tüm yüksek öncelikli kusurların yeniden test edilmesi. • Kalan Test Senaryolarının Yürütülmesi. • Yalnızca Önem Derecesi 3 ve Önem Derecesi 2 olan birkaç kusur bulunacak. | • Önem Derecesi 1, Önem Derecesi 2 ve Önem Düzeyi 3 kusurları daha az sayıda Açıldı. • Tüm Senaryolar kapsanmıştır. |
Burada durmalı mısın?
Var tüm Test senaryolarını tamamen kapsadı bir kez ve birkaç büyük kusur açtı. Bu noktada durmak size yazılım konusunda güven verecek mi?
Gerçekten aşağıdaki nedenlerden dolayı değil:
- Tüm Senaryolar yalnızca bir kez yürütülür.
- Yazılımda hala birçok büyük kusur var.
- Regresyon kapsanmaz.
Her iki senaryoda da kaliteden ödün verildiğini görebiliriz. En iyi yaklaşım, senaryo 1 ve senaryo 2'deki tüm faktörlerin kapsandığı ve kaliteden de ödün verilmediği bir nokta bulmak olacaktır. Bunu başarmak için testin başında belirli kriterler belirlememiz gerekecek.
Bu kriterler, Tamamlama veya Çıkış Kriterleri olarak adlandırılır. Sorumuzun cevabı bu - 'Test Ne Zaman Durdurulmalı?'.
Tamamlama veya Çıkış Kriterleri nedir?
Çıkış kriterleri test döngüsünün sonunda değerlendirilir ve Test Planında tanımlanır. Testi sonuçlandırmak için yerine getirilmesi gereken koşullar veya faaliyetler bütünüdür.
Çıkış kriterleri, ne kadar testin yeterli olduğunu ve test faaliyetlerinin ne zaman tamamlanmış ilan edilebileceğini tanımlar. Kapsam ve tamamlanma kriterleri, test için çıkış kriterlerini tanımlamak üzere birleştirilir.
Çıkış Kriterlerinde neler bulunmalıdır?
İdeal olarak, Çıkış veya Durdurma Kriterleri çeşitli faktörlerin birleştirilmesiyle tanımlanır ve bu nedenle tüm projeler için benzersizdir. Proje gereksinimine bağlıdır ve bu nedenle Test Planlaması sırasında tanımlanmalıdır; projenin başında. İçinde tanımlanan parametreler olabildiğince nicelleştirilmelidir.
Aşağıda, İşlevsel veya Sistem Testi durumunda Çıkış Kriterlerini tanımlarken dikkate alınması gereken birkaç işaret bulunmaktadır. Projenizin ihtiyaçlarına göre testi nerede durduracağınıza karar verirken aşağıdaki faktörlerin birkaçını veya tümünü birleştirebilirsiniz.
Test şu durumlarda durdurulabilir:
Gereksinimler:
- % 100 Gereksinimler kapsamı sağlanmıştır.
Kusurlar:
- Tanımlanan / İstenen Hata sayısına ulaşıldı.
- Tüm Show Stopper kusurları veya Engelleyiciler düzeltildi ve Bilinen Kritik / Önem Derecesi 1 hatası yok Açık Durumda.
- Tüm Yüksek Öncelikli kusurlar belirlenir ve düzeltilir.
- Kusur Oranı, tanımlanan kabul edilebilir oranın altına düşüyor.
- Orta Öncelikli kusurların çok azı açıktır ve bir geçici çözümü vardır.
- Yazılım kullanımını etkilemeyen çok az düşük öncelikli açık kusur.
- Tüm Yüksek Öncelikli kusurlar yeniden test edilir ve kapatılır ve ilgili Regresyon senaryoları başarıyla yürütülür.
Test kapsamı:
- Test Kapsamı% 95'e ulaşılmalıdır.
- Test senaryosu Geçme Oranı% 95 olmalıdır. Bu formülle hesaplanabilir
- (Toplam Geçilen TC Sayısı / Toplam TC Sayısı) * 100.
- Tüm kritik Test durumları geçildi.
- % 5 Test senaryoları başarısız olabilir ancak Başarısız Test durumları düşük önceliğe sahiptir.
- Tam Fonksiyonel Kapsama elde edilir.
- Tüm önemli işlevsel / iş akışları, çeşitli girdilerle başarıyla yürütülüyor ve iyi çalışıyor.
Son tarihler:
- Proje Son Tarihi veya Test Bitirme tarihine ulaşıldı.
Test Belgeleri:
- Tüm Test Belgeleri / çıktıları (Örnek - Test Özeti Raporu ) hazırlanır, incelenir ve yayınlanır.
Bütçe:
- Tam Test Bütçesi tükendi.
'Devam / Gitme' Toplantıları:
- ' Git / Gitme ' toplantı paydaşlarla birlikte yürütülmüş ve projenin üretime geçip geçmemesine karar verilmiştir.
Sonuç:
Sonunda bunu çok basitleştirelim.
Lütfen soruları basit bir Evet veya Hayır ile cevaplayın.
Yanıtların çoğunu Evet olarak alırsanız, bu noktada testi durdurabilirsiniz demektir. Cevapların çoğu Hayır ise, bu, testte eksik olanı kontrol etmeniz gerektiği anlamına gelir ve bu, kaçan bir üretim hatası bulmanıza yardımcı olabilir :)
- Tüm test senaryoları en az bir kez mi yürütülüyor?
- Test Vakası Geçme oranı tanımlandığı gibi mi?
- Tam test kapsamı sağlandı mı?
- Tüm işlevsel / İş akışları en az bir kez yürütülüyor mu?
- Karar verilen kusur sayısına ulaşıldı mı?
- Tüm Büyük Yüksek Öncelikli Kusurlar düzeltildi ve kapatıldı mı?
- Tüm Kusurlar Yeniden Test edildi ve kapatıldı mı?
- Tüm açık kusurlar için Regresyon yapıldı mı?
- Test bütçesini bitirdiniz mi?
- Test bitiş zamanına ulaşıldı mı?
- Tüm Test Çıktıları gözden geçirilip yayınlanıyor mu?
Yazar hakkında: Bu, Renuka K.'nın konuk makalesidir. 11 yılı aşkın Yazılım testi deneyimine sahiptir.
Umarım bu makale size yardımcı olmuştur. Konuyla ilgili düşüncelerinizi / yorumlarınızı da duymak isterim.
Mutlu Testler!
Önerilen Kaynaklar
- En İyi Yazılım Test Araçları 2021 [QA Test Otomasyon Araçları]
- Yazılım Testi QA Yardımcısı İşi
- Yazılım Test Kursu Müfredatı - Çevrimiçi Kurs Ayrıntılı Eğitim Planı
- Yazılım Test Kursu: Hangi Yazılım Test Enstitüsüne katılmalıyım?
- Kariyeriniz olarak Yazılım Testini Seçme
- Yazılım Testi Teknik İçerik Yazarı Serbest Çalışan İş
- Bazı İlginç Yazılım Testi Görüşme Soruları
- Yazılım Test Kursu Geri Bildirimleri ve İncelemeleri