Recovery testing
Sistemdeki çökmeler sonrasında uygulamanın davranışlarını inceleyip zararı en aza indirgenmesi için uygulanan testlerdir. Özellikle transaction bazında işlemler içeren uygulamalarda testin olmazsa olmaz bir parçasıdır.
Kendi uyguladığım testlerden örnek vererek anlatsam biraz daha açıklayıcı olacak sanırım.
Örn : Kiosk
Bir kartlı ödeme sistemi düşünün ve kiosklardan bu karta para yüklemesi gercekleştiriliyor.
Test Caseleri
-İşlem sırasında elektriğin kesilmesi
-Network kablosunun çekilmesi
-Kart okuyucu ile kioskun bağlantısının koparılması … vb.
Görüldüğü gibi caseler hiç başa gelmeyecek şeyler değil, bu gibi durumlarda iş akısının tamamlanamaması tüm sistemi durdurabilecek hatalara neden olabilir. Yukarıda verdiğimiz örnekde şu case oluşabilir ;
-Kiosktan yükleme işlemi yap
-Kiosk server a bilgiyi gönderir
-Bilgi server da işlenir
-Serverdan kioska onay bilgisi gider
bu noktada bağlantı kesilirse
-server tarafında yapılmış ama kart üzerine yeni bakiye onay alınamadığı için kiosk tarafından kartın üzerine yazılamamış olacak.
Böyle bir durumda gerekli recover yapılmadıysa bir sonraki harcama server a gittiğinde server-kart bakiye uyumsuzluğu nedeniyle tüm sistem crash edebilir.
Son Yorumlar