Yazılım Testinde Dayanıklılık Testi Nedir? (Örnek ile)

Dayanıklılık Testi

Dayanıklılık Testi sürekli kullanım altında yazılım uygulamasının davranışını değerlendirmek için bir yazılımın önemli bir süreye yayılan yüksek yük ile test edildiği, işlevsel olmayan bir yazılım testi türüdür. Dayanıklılık testinin temel amacı, uygulamanın yanıt süresinde herhangi bir bozulma olmadan uzun süreli yükü kaldırabilecek kapasitede olmasını sağlamaktır.

Bu tür testler performans çalıştırma döngüsünün son aşamasında gerçekleştirilir. Dayanıklılık testi uzun bir süreçtir ve bazen bir yıla kadar sürebilir. Bu, İnternet trafiği veya kullanıcı eylemleri gibi harici yüklerin uygulanmasını içerebilir. Bu, dayanıklılık testini diğerlerinden farklı kılmaktadır. Yük Testigenellikle birkaç saat içinde sona erer.

Dayanıklılık kapasite anlamına gelir yani Dayanıklılık Testini Kapasite Testi olarak adlandırabilirsiniz.

Dayanıklılık Testinin Hedefleri

  • Dayanıklılık testinin temel amacı bellek sızıntılarını kontrol etmektir.
  • Sistemin sürekli kullanımda nasıl performans gösterdiğini keşfetmek.
  • Uzun bir süre sonra sistem yanıt süresinin testin başlangıcıyla aynı veya daha iyi kalmasını sağlamak.
  • Belirli bir sistemin performans hedeflerini destekleyeceği ve karşılayacağı kullanıcı ve/veya işlem sayısını belirlemek.
  • Gelecekteki yükleri yönetmek için, gelecekteki kullanımı desteklemek için ne kadar ek kaynağın (işlemci kapasitesi, disk kapasitesi, bellek kullanımı veya ağ bant genişliği gibi) gerekli olduğunu anlamamız gerekir.
  • Dayanıklılık testi genellikle ya sisteme aşırı yükleme yapılarak ya da belirli sistem kaynaklarının azaltılması ve sonuçların değerlendirilmesi yoluyla yapılır.
  • Nispeten "normal" sayılan bir kullanım süresinden sonra kusurların veya bellek sızıntılarının oluşmamasını sağlamak için gerçekleştirilir.

Dayanıklılık Testinde nelerin izlenmesi gerektiği

Dayanıklılık Testi

Dayanıklılık Testinde aşağıdaki şeyler test edilir.
  • Bellek sızıntısını test edin– Uygulamada sistemin veya işletim sisteminin çökmesine neden olabilecek herhangi bir bellek sızıntısı olup olmadığını doğrulamak için kontroller yapılır.
  • Sistemin katmanı arasındaki bağlantının kapatılmasını test edin – Sistemin katmanları arasındaki bağlantı başarıyla kapatılmazsa sistemin bazı modüllerinin veya tamamının durmasına neden olabilir.
  • Veritabanı bağlantısını test edin başarıyla kapatın– Veritabanı bağlantısı başarıyla kapatılmazsa sistemin çökmesine neden olabilir
  • Test yanıt süresi – Sistemin uzun süre kullanılması sonucunda uygulama daha az verimli hale geldiğinden, sistemin tepki süresi test edilir.

Dayanıklılık Testi nasıl yapılır?

Dayanıklılık Testi için temel test yaklaşımı aşağıdadır
  • Test Ortamı – Dayanıklılık testi için gereken donanım, yazılım, işletim sisteminin belirlenmesi, ekip içindeki rollerin ve sorumlulukların atanması vb. Ortam, testin yürütülmesinden önce hazır olmalıdır. Ayrıca ortak veritabanı üretim boyutunu ve yıllık büyümeyi de tahmin etmeniz gerekir. Bu gereklidir, çünkü başvurunuzun bir, iki veya beş yıl sonra nasıl yanıt vereceğini test etmeniz gerekir.
  • Test Planının Oluşturulması, Senaryolar – Testin doğasına bağlı olarak (manuel veya otomasyon veya her ikisinin kombinasyonu), Test Durumu tasarım, gözden geçirme ve uygulama planlanmalıdır. Sistemi zorlamaya yönelik testler, kırılma noktası testleri vb. de test planının bir parçası olmalıdır. Sistemi zorlamaya yönelik testler uygulamadaki kırılma noktasını belirler.
  • Test Tahmini – Test aşamasını tamamlamanın ne kadar süreceği konusunda tahminde bulunun. İlgili test uzmanlarının sayısı ve gerekli test döngüsü sayısı temel alınarak analiz edilmelidir.
  • Risk analizi - Riskin analiz edilmesi ve önlenmesi için uygun önlemlerin alınması. Test senaryolarının Risk faktörüne göre önceliklendirilmesi ve aşağıdaki risklerin belirlenmesi ve test uzmanının dayanıklılık testi sırasında karşılaşabileceği sorunlar.
  • Performans zaman içinde tutarlı kalacak mı?
  • Henüz tespit edilmemiş başka küçük sorunlar var mı?
  • Ele alınmayan dış müdahale var mı?
  • Test programı - Bütçeyi ve teslimatları zaman dilimleri içerisinde belirleyin. Gibi Dayanıklılık Testi sürekli bir süre boyunca sisteme/uygulamaya büyük ama doğal bir işlem yükü düzenlemesi uygular.

Dayanıklılık Testi Örneği

Süre Stres testi test edilen sistemi sınırlarına kadar götürür, Dayanıklılık testi uygulamayı sınırına kadar götürüyor birbirine çok benzemeye başladı.Örneğin, en karmaşık sorunlar - bellek sızıntıları, veritabanı sunucusu kullanımı ve yanıt vermeyen sistem - yazılım uzun süre çalıştığında ortaya çıkar. Dayanıklılık testlerini atlarsanız, dağıtımdan önce bu tür kusurları tespit etme şansınız oldukça düşüktür.

Dayanıklılık Test Araçları

Dayanıklılık Testinin Avantajları

  • Yük Altındaki Sistemin iş yükünün nasıl üstesinden gelebileceğini belirlemeye yardımcı olur.
  • Müşterinin altyapı ihtiyaçlarını doğrulamak veya geliştirmek için kullanabileceği doğru veriler sağlar.
  • Sistemin uzun süre yüksek seviyede çalışması sonrasında oluşabilecek performans sorunlarını tanımlar
  • Tipik sorunlar, daha küçük hedefli performans testlerinde tanımlanır; bu, çok kısa bir sürede çok büyük bir yük olduğunda bile uygulamanın kullanılabilir kalmasını sağladığı anlamına gelir.
  • Dayanıklılık testi aynı zamanda uzun bir uygulama süresinden sonra performansta herhangi bir bozulma olup olmadığını kontrol etmek için de kullanılır.

Dayanıklılık Testinin Dezavantajları

  • Ne kadar stresin uygulanmaya değer olduğunu tanımlamak genellikle zordur.
  • Dayanıklılık Testi, aşağıdaki durumlarda önemli kesintilerle sonuçlanabilecek uygulama ve/veya ağ arızalarına neden olabilir: Test ortamı izole değildir.
  • Kalıcı Veri kaybı veya bozulması, sistemin aşırı yüklenmesi sonucu meydana gelebilir.
  • Stres ortadan kalktıktan sonra kaynak kullanımı çok yüksek kalır.
  • Bazı uygulama bileşenleri yanıt vermiyor.
  • İşlenmeyen istisnalar son kullanıcı tarafından gözlemlenir.

ÖZET

  • In Yazılım MühendisliğiDayanıklılık testi, yük testinin bir alt kümesidir.
  • Dayanıklılık testi uzun bir süreçtir ve bazen bir yıla kadar sürebilir
  • Doğrulamak için kontroller yapılıyor
  • Bellek sızıntısını test edin
  • Test yanıt süresi
  • Veritabanı bağlantısını vb. test edin.