what is scalability testing
Ölçeklenebilirlik Testine Giriş:
Ölçeklenebilirlik Testi, bir uygulamanın performansının kullanıcı isteklerinin veya diğer bu tür performans ölçüm özniteliklerinin sayısını artırma veya azaltma becerisi açısından ölçüldüğü, işlevsel olmayan bir test metodolojisidir.
Ölçeklenebilirlik testi, donanım, yazılım veya veritabanı düzeyinde gerçekleştirilebilir.
en iyi ücretsiz kayıt defteri temizleyicisi nedir
Bu test için kullanılan parametreler bir uygulamadan diğerine farklılık gösterir, bir web sayfası için kullanıcı sayısı, CPU kullanımı, ağ kullanımı olabilirken, bir web sunucusu için işlenen isteklerin sayısı olabilir.
Bu eğitim size tam bir genel bakış verecektir. Ölçeklenebilirlik Testi, özellikleri ve testin gerçekleştirilmesinde yer alan çeşitli adımlarla birlikte, kavramı daha iyi anlamanıza olanak sağlamak için pratik örneklerle.
Ne öğreneceksin:
- Ölçeklenebilirlik Testi ve Yük Testi
- Ölçeklenebilirlik Testi Özellikleri
- Bir Uygulamanın Ölçeklenebilirliğini Test Etme Adımları
- Sonuç
- Önerilen Kaynaklar
Ölçeklenebilirlik Testi ve Yük Testi
Yük Testi, sistemin çökeceği maksimum yük altında test edilen uygulamayı ölçer. Yük testinin temel amacı, kullanıcıların sistemi kullanamayacakları en yüksek noktayı belirlemektir.
Hem Yük hem de Ölçeklenebilirlik, Performans Testi metodolojisi kapsamındadır.
Ölçeklenebilirlik, ölçeklenebilirlik testinin sistemi yazılım, donanım ve veritabanı seviyeleri dahil olmak üzere tüm seviyelerde minimum ve maksimum yüklerde ölçmesi bakımından Yük Testinden farklıdır. Maksimum yük tespit edildikten sonra, geliştiricilerin sistemin belirli bir yükten sonra ölçeklenebilir olmasını sağlamak için uygun şekilde yanıt vermesi gerekir.
jar dosyası nasıl çalıştırılır Windows 10
Misal: Ölçeklenebilirlik testi, maksimum yükün 10.000 kullanıcı olduğunu belirlerse, sistemin ölçeklenebilir olması için geliştiricilerin, 10.000 kullanıcı sınırına ulaşıldıktan sonra yanıt süresinin azaltılması veya artan kullanıcı verilerini barındıracak şekilde RAM boyutunun artırılması gibi faktörler konusunda önlemler alması gerekir.
Yük Testi, geliştirilen uygulamalara tek seferde maksimum bir yük yerleştirmeyi içerirken, ölçeklenebilirlik testi, yükü belirli bir süre içinde aşamalı olarak kademeli olarak artırmayı içerir.
Yük testi, uygulamanın çöktüğü noktayı belirler, ölçeklenebilirlik ise uygulama çökmesinin nedenini belirlemeye ve sorunu çözmek için adımlar atmaya çalışır.
Kısacası, Yük Testi performans sorunlarını belirlemeye yardımcı olurken, ölçeklenebilirlik testi sistemin artan sayıda kullanıcıya ölçeklenip ölçeklenemeyeceğini belirlemeye yardımcı olur.
Ölçeklenebilirlik Testi Özellikleri
Ölçeklenebilirlik testi öznitelikleri, bu testin gerçekleştirileceği temel alınarak performans ölçümlerini tanımlar.
Yaygın özelliklerden bazıları şunlardır:
1) Tepki Süresi:
- Yanıt Süresi, kullanıcı talebi ile uygulama yanıtı arasındaki süredir. Bu test, uygulamanın bozulacağı noktayı belirlemek için minimum yük, eşik yükü ve maksimum yük altında sunucunun yanıt süresini belirlemek için yapılır.
- Yanıt süresi, uygulama üzerindeki değişen kullanıcı yüküne bağlı olarak artabilir veya azalabilir. İdeal olarak, bir uygulamanın yanıt süresi, kullanıcı yükü arttıkça azalacaktır.
- Bir uygulama, değişen kullanıcı yükü seviyeleri için aynı yanıt süresini sağlayabiliyorsa, ölçeklenebilir olarak kabul edilebilir.
- Uygulama yükünün birden çok sunucu bileşeni arasında dağıtıldığı kümelenmiş ortamlar söz konusu olduğunda, ölçeklenebilirlik testi, yük dengeleyicinin yükü birden çok sunucu arasında ne ölçüde dağıttığını ölçmelidir. Bu, diğer sunucu bir isteğin gelmesini beklerken boşta otururken bir sunucunun isteklerle aşırı yüklenmemesini sağlayacaktır.
- Uygulama kümelenmiş bir ortamda barındırılıyorsa her sunucu bileşeninin yanıt süresi dikkatlice ölçülmeli ve ölçeklenebilirlik testi, her sunucuya yerleştirilen yük miktarına bakılmaksızın her sunucu bileşeninin yanıt süresinin aynı olmasını sağlamalıdır.
- Misal: Yanıt süresi, kullanıcının bir web tarayıcısına URL'yi girdiği süre ile web sayfasının içeriği yüklemek için geçmesi gereken süre olarak ölçülebilir. Yanıt süresi ne kadar az olursa, bir uygulamanın performansı o kadar yüksek olur.
2) Verim:
- Verim, uygulama tarafından bir birim zaman içinde işlenen bir dizi isteğin ölçüsüdür.
- Aktarım hızının sonucu bir uygulamadan diğerine farklılık gösterebilir. Bir web uygulaması ise, verim, birim zamanda işlenen kullanıcı isteklerinin sayısı ve bir veritabanı olup olmadığı ile ölçülür. verim, birim zamanda işlenen bir dizi sorgu cinsinden ölçülür.
- Bir uygulama, dahili uygulamalar, donanım ve veri tabanında değişen yük seviyeleri için aynı verimi sağlayabiliyorsa, ölçeklenebilir olarak kabul edilir.
3) CPU Kullanımı:
- CPU Kullanımı, bir uygulama tarafından bir görevi gerçekleştirmek için CPU Kullanımının bir ölçüsüdür. CPU Kullanımı genellikle MegaHertz birimi cinsinden ölçülür.
- İdeal olarak, uygulama kodu ne kadar optimize edilmişse, gözlemlenen CPU Kullanımı o kadar az olacaktır.
- Bunu başarmak için, birçok kuruluş CPU Kullanımını en aza indirmek için standart programlama uygulamalarını kullanır.
- Misal: Uygulamadaki ölü kodu kaldırmak ve Thread kullanımını en aza indirmek. Uyku yöntemleri, CPU Kullanımını en aza indirmek için en iyi programlama uygulamalarından biridir.
4) Bellek Kullanımı:
- Bellek kullanımı, bir uygulama tarafından bir görevi gerçekleştirmek için kullanılan belleğin bir ölçüsüdür.
- İdeal olarak bellek, Rastgele Erişim Belleğine (RAM) erişmek için geliştirilen uygulamanın kullandığı bayt (MegaBytes, GigaBytes veya Tera Bytes) cinsinden ölçülür.
- Bir uygulamanın bellek kullanımı, en iyi programlama uygulamaları izlenerek en aza indirilebilir.
- En iyi programlama uygulamalarının örnekleri, fazlalık döngüleri kullanmamak, veritabanına yapılan isabetlerin azaltılması, önbelleğin kullanılması, SQL sorgularının kullanımını optimize etmek vb. Olabilir. mümkün olan maksimum ölçüde.
- Misal: Belirli sayıda kullanıcı için kullanılabilir depolama alanı bellek yetersiz kalırsa, geliştirici, veri kaybını telafi etmek için ek veritabanı depolama alanı eklemeye zorlanacaktır.
5) Ağ kullanımı:
- Ağ kullanımı, test edilen bir uygulama tarafından tüketilen bant genişliği miktarıdır.
- Ağ kullanımının amacı ağ tıkanıklığını azaltmaktır. Ağ kullanımı saniyede alınan bayt sayısı, saniyede alınan çerçeve sayısı, saniyede alınan ve gönderilen segment sayısı vb. İle ölçülür.
- Sıkıştırma tekniklerinin kullanımı gibi programlama teknikleri, tıkanıklığı azaltmaya ve ağ kullanımını en aza indirmeye yardımcı olabilir. Minimum ağ tıkanıklığı ile çalışabilen ve yüksek uygulama performansı sunabilen bir uygulamanın ölçeklenebilir olduğu kabul edilir.
- Misal: Kullanıcı isteklerini işlemek için bir kuyruk mekanizmasını izlemek yerine, bir geliştirici, istek bir veritabanına ulaştığında kullanıcı isteklerini işlemek için kodu yazabilir.
Bu parametrelerin dışında, Sunucu isteği yanıt süresi, Görev yürütme süresi, İşlem süresi, Web Sayfası yükleme süresi, Veritabanından yanıtı alma süresi, Yeniden başlatma süresi, Yazdırma süresi, oturum süresi, ekran geçişi gibi daha az kullanılan başka birkaç parametre vardır. , saniye başına işlem, saniye başına isabet, saniye başına istek vb.
Ölçeklenebilirlik testinin öznitelikleri, bir uygulamadan diğerine farklılık gösterebilir çünkü web uygulamaları için performans ölçüsü, bir masaüstü veya bir istemci-sunucu uygulamasınınki ile aynı olmayabilir.
Bir Uygulamanın Ölçeklenebilirliğini Test Etme Adımları
Bu testi bir uygulama üzerinde yapmanın temel avantajı, maksimum yüke ulaşıldığında kullanıcı davranışını ve bunu çözmenin yollarını anlamaktır.
Ayrıca, bu test, test uzmanlarının, uygulama kullanıcı yüküne göre sunucu tarafı bozulmasını ve yanıt süresini belirlemesine olanak tanır. Sonuç olarak, bu test dünya çapında çeşitli kuruluşlarda tercih edilmektedir.
Aşağıda, bir uygulamanın ölçeklenebilirliğini test etmek için gereken adımların listesi verilmiştir:
- Ölçeklenebilirlik testi özelliklerinin her biri için tekrarlanabilir test senaryoları oluşturun.
- Uygulamayı düşük, orta ve yüksek yükler gibi çeşitli yük seviyeleri için test edin ve bir uygulamanın davranışını doğrulayın.
- Tüm ölçeklenebilirlik testi döngüsüne dayanacak kadar kararlı bir test ortamı oluşturun.
- Bu testi gerçekleştirmek için gerekli donanımı yapılandırın.
- Değişken kullanıcı yükü altında bir uygulamanın davranışını doğrulamak için bir dizi sanal kullanıcı tanımlayın.
- Farklı dahili uygulamalar, donanım ve veritabanı değişiklikleri koşulları altında birden çok kullanıcı için test senaryolarını tekrarlayın.
- Kümelenmiş bir ortam olması durumunda, yük dengeleyicinin kullanıcı isteklerini birden çok sunucuya yönlendirip yönlendirmediğini doğrulayarak hiçbir sunucunun bir dizi istek tarafından aşırı yüklenmediğinden emin olun.
- Test ortamında test senaryolarını yürütün.
- Oluşturulan raporları analiz edin ve varsa iyileştirme alanlarını doğrulayın.
Sonuç
Kısaca,
=> Ölçeklenebilirlik testi, bir uygulamanın çeşitli özelliklere göre ölçeklendirilip ölçeklenemeyeceğini doğrulamak için işlevsel olmayan bir test metodolojisidir. Bu test için kullanılan özellikler bir uygulamadan diğerine değişiklik gösterecektir.
=> Bu testin ana amacı, bir uygulamanın maksimum yükte ne zaman bozulmaya başladığını belirlemek ve geliştirilen uygulamanın dahili uygulamalardaki, yazılımdaki, donanımdaki ve ayrıca veritabanındaki değişiklikleri barındıracak kadar ölçeklenebilir olmasını sağlamak için uygun adımları atmaktır. gelecekte değişiklikler.
=> Bu test düzgün bir şekilde yapılırsa, geliştirilen uygulamalarda yazılım, donanım ve veri tabanındaki performansla ilgili büyük hatalar ortaya çıkarılabilir.
=> Bu testin önemli bir dezavantajı, veritabanı boyutu ve arabellek alanı ile ilgili sınırlamalarla birlikte veri depolama sınırlamasıdır. Ayrıca ağ bant genişliği sınırlamaları, ölçeklenebilirlik testine engel olabilir.
Java mülakat soruları ve yanıtlarında web hizmetleri
=> Bir uygulamanın ölçeklenebilirlik testi özellikleri diğer uygulamalardan farklı olacağından, ölçeklenebilirlik testi süreci bir kuruluştan diğerine farklılık gösterir.
Önerilen Kaynaklar
- HP LoadRunner Öğreticileriyle Yük Testi
- Performans Testi - Yük Testi - Stres Testi (Fark)
- Masaüstü, İstemci Sunucu Testi ve Web Testi arasındaki fark
- WAPT Kullanarak Web Uygulama Yükü, Stres ve Performans Testi
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Web Uygulaması Güvenliği Test Kılavuzu
- Uygulama Testi - Yazılım Testinin Temellerine Giriş!
- Uygulamanızı Cihaza Yükleme ve Eclipse'den Test Etmeye Başlama