
Yazılım test stratejisi, her ayrıntıyı aynı yoğunlukta sınamak yerine iş riskine uygun test katmanlarını, veriyi, ortamı ve sorumluluğu belirler.
Riski haritalayın
Para, stok, kişisel veri, yetki, dış servis ve geri alınamaz durum değişiklikleri yüksek önceliklidir. Sık kullanılan ana akış ve geçmişte hata veren alanlar da daha geniş regresyon ister. Görsel hata ile yanlış tahsilat aynı test yatırımını almamalıdır.
Test piramidini bağlama uyarlayın
- Birim: Hesap, doğrulama ve küçük iş kuralları hızlı sınanır.
- Entegrasyon: Veritabanı, kuyruk ve servis sözleşmeleri kontrol edilir.
- Uçtan uca: Kritik kullanıcı yolculuğu gerçek giriş noktasından yürütülür.
- Keşif: Uzman kullanıcı beklenmeyen davranışı araştırır.
Yalnızca uçtan uca testler yavaş ve kırılgan; yalnızca birim testleri ise gerçek bağlantı risklerine kör olabilir.
Başarısız senaryoları tasarlayın
Geçersiz veri, yetkisiz istek, çift tıklama, eşzamanlı güncelleme, ağ zaman aşımı, kısmi hata, iptal ve geri alma davranışları sınanır. Transaction kullanan akışta hata sonrası yarım kayıt kalmadığı doğrulanır.
Test verisi ve ortam
Gerçek kişisel veriyi kopyalamadan temsil gücü yüksek veri seti hazırlanır. Test ve canlı servis anahtarları ayrılır. Şema ve sürüm farklılığı kontrol edilir. Otomatik test sonucu sürümle ilişkilendirilir.
Çıkış ölçütü
Kritik testlerin geçmesi, açık hata seviyeleri, kullanıcı kabulü ve geri dönüş planı yayın kararını belirler. Kanıtlı yazılım geliştirme yaklaşımı için proje risklerinizi paylaşabilirsiniz.
Üretim hatasından teste geri besleme
Canlıda bulunan her önemli hata için neden önceki kontrollerin yakalayamadığını inceleyin. Eksik kabul kriteri, temsil etmeyen test verisi, ortam farkı veya hiç izlenmeyen hata dalı olabilir. Yalnızca hatayı düzelten test eklemek yerine uygun en düşük katmana kalıcı regresyon ekleyin. Hata sınıflarının zaman içindeki dağılımı, test yatırımının nerede artırılacağını ve hangi modülün tasarım sadeleştirmesine ihtiyaç duyduğunu gösterir.