Çevik Test - Teknikler
Geleneksel testlerden Test Teknikleri, Çevik testlerde de kullanılabilir. Bunlara ek olarak, Agile projelerinde Agile'e özel test teknikleri ve terminolojileri kullanılmaktadır.
Test Esası
Çevik projelerde, ürün birikimi, gereksinim spesifikasyon belgelerinin yerini alır. Ürün birikiminin içeriği normalde kullanıcı hikayeleridir. İşlevsel olmayan gereksinimler de kullanıcı öykülerinde dikkate alınır. Dolayısıyla Agile projelerinde test temeli kullanıcı hikayesidir.
Kalite testini sağlamak için aşağıdakiler ek olarak test temeli olarak da düşünülebilir -
- Aynı projenin veya geçmiş projelerin önceki yinelemelerinden edinilen deneyim.
- Sistemin mevcut fonksiyonları, mimarisi, tasarımı, kodu ve kalite özellikleri.
- Mevcut ve geçmiş projelerden kusur verileri.
- Müşteri geribildirimi.
- Kullanıcı belgeleri.
Bitti'nin Tanımı
Bitti Tanımı (DoD), Sprint iş yığınındaki bir faaliyetin tamamlanmasını sağlamak için Çevik projelerde kullanılan kriterlerdir. DoD, bir Scrum takımından diğerine değişebilir, ancak bir takım içinde tutarlı olmalıdır.
DoD, kullanıcı öyküsünün bir parçası olan işlevsel olmayan gereksinimlerin yanı sıra bir kullanıcı öyküsündeki işlevlerin ve özelliklerin uygulanmasını sağlayan gerekli etkinliklerin bir kontrol listesidir. DoD kontrol listesindeki tüm maddeler tamamlandıktan sonra bir kullanıcı hikayesi Bitti aşamasına ulaşır. Ekip arasında bir Savunma Bakanlığı paylaşılır.
Bir kullanıcı hikayesi için tipik bir Savunma Bakanlığı şunları içerebilir:
- Ayrıntılı Test Edilebilir Kabul Kriterleri
- Kullanıcı Hikayesinin Yinelemedeki diğerleriyle tutarlılığını sağlamak için kriterler
- Ürünle İlgili Özel Kriterler
- İşlevsel Davranış Yönleri
- İşlevsel olmayan özellikler
- Interfaces
- Test Verisi Gereksinimleri
- Test kapsamı
- Refactoring
- İnceleme ve Onay Gereksinimleri
Kullanıcı Hikayeleri için DoD'ye ek olarak, DoD de gereklidir -
- her Test Düzeyinde
- her Özellik için
- her Yineleme için
- Yayın için
Test Bilgileri
Bir test uzmanının aşağıdaki Test bilgilerine sahip olması gerekir -
- Test edilmesi gereken Kullanıcı Hikayeleri
- İlişkili Kabul Kriterleri
- Sistem Arayüzleri
- Sistemin Çalışmasının Beklendiği Ortam
- Araçların kullanılabilirliği
- Test kapsamı
- DoD
Çevik projelerde, test sıralı bir faaliyet olmadığından ve test uzmanlarının işbirliğine dayalı bir modda çalışması gerektiğinden, test uzmanının sorumluluğu:
- Sürekli olarak gerekli test bilgilerini alın.
- Testi etkileyen bilgi boşluklarını belirleyin.
- Diğer ekip üyeleriyle işbirliği içinde boşlukları çözün.
- Bir test seviyesine ne zaman ulaşıldığına karar verin.
- İlgili zamanlarda uygun testlerin yapılmasını sağlayın.
Fonksiyonel ve Fonksiyonel Olmayan Test Tasarımı
Çevik projelerde geleneksel test teknikleri kullanılabilir, ancak odak noktası erken testtir. Uygulama başlamadan önce test durumlarının olması gerekir.
Fonksiyonel test tasarımı için, test uzmanları ve geliştiriciler geleneksel Kara Kutu test tasarım tekniklerini kullanabilir:
- Eşit bölümlere ayırma
- Sınır Değer Analizi
- Karar Tabloları
- Devlet geçişi
- Sınıf Ağacı
İşlevsel olmayan test tasarımı için, işlevsel olmayan gereksinimler de her bir kullanıcı öyküsünün bir parçası olduğundan, kara kutu test tasarım teknikleri yalnızca ilgili test senaryolarını tasarlamak için kullanılabilir.
Araştırma testi
Çevik projelerde, zaman genellikle Test Analizi ve Test Tasarımı için sınırlayıcı faktördür. Bu gibi durumlarda, Keşif test teknikleri, geleneksel test teknikleriyle birleştirilebilir.
Keşif Testi (ET), eşzamanlı öğrenme, test tasarımı ve test yürütme olarak tanımlanır. Keşif Testinde, test uzmanı, testlerin tasarımını gerçekleştirilirken aktif olarak kontrol eder ve test sırasında elde ettiği bilgileri yeni ve daha iyi testler tasarlamak için kullanır.
Keşif Testi, Çevik projelerdeki değişiklikleri barındırmak için kullanışlıdır.
Risk Temelli Test
Risk bazlı test, başarısızlık riskine dayalı testlerdir ve test tasarım tekniklerini kullanarak riskleri azaltır.
Ürün kalitesi riski, ürün kalitesiyle ilgili potansiyel bir sorun olarak tanımlanabilir. Ürün kalitesi riskleri şunları içerir:
- Fonksiyonel riskler
- İşlevsel olmayan performans riskleri
- İşlevsel olmayan kullanılabilirlik riskleri
Her bir riskin olasılığını (olasılığını) ve etkisini değerlendirmek için risk analizi yapılacaktır. Ardından risklere öncelik verilir -
- Yüksek Riskler Kapsamlı Testler gerektirir
- Düşük Riskler yalnızca Cursory Test gerektirir
Testler, her bir Riskin Risk Seviyesi ve Risk Karakteristiğine göre uygun Test Teknikleri kullanılarak tasarlanır. Daha sonra Riskleri azaltmak için testler yapılır.
Fit Testleri
Uygunluk Testleri, otomatik Kabul Testleridir. Tools Fit ve FitNesse, kabul testlerini otomatikleştirmek için kullanılabilir.
FIT, JUnit kullanır, ancak test işlevini genişletir. Test senaryolarını görüntülemek için HTML tabloları kullanılır. Fixture, HTML tablosunun arkasındaki bir Java sınıfıdır. Fikstür, HTML tablosunun içeriğini alır ve test edilen proje üzerinde test senaryolarını çalıştırır.