stress testing guide
Yeni Başlayanlar İçin Kapsamlı Bir Stres Testi Kılavuzu:
Bir noktanın ötesinde herhangi bir şeyi vurgulamak, insanlarda, makinelerde veya bir programda ciddi sonuçlara yol açar. Ya ciddi hasarlara neden olur ya da tamamen bozar.
Benzer şekilde, bu eğitimde, web uygulamalarının etkisiyle birlikte stres testi yapmayı öğreneceğiz.
Uygulamalarınızın veya web sitelerinizin stresli olduklarında, yani ağır yüklendiklerinde kalıcı hasar görmesini önlemek için, kırılma noktasını bulmamız ve bu tür koşullardan kaçınmak için çözüm bulmamız gerekir. Noel indirimi sırasında alışveriş web siteniz kapandığında nasıl olacağını bir düşünün. Kayıp ne kadar olur?
Aşağıda, bir uygulamayı veya web sitesini stres testinin yüksek önem arz ettiği bazı gerçek durum örnekleri listelenmiştir:
java bir diziden bir öğe nasıl kaldırılır
# 1) Festivaller, indirimler veya özel teklif dönemlerinde yük çok arttığı için ticari alışveriş uygulamaları veya web sitelerinin stres testi yapması gerekir.
#iki) Finansal uygulamalar veya web siteleri, bir şirketin hissesi arttığında, birçok kişi satın almak veya satmak için hesaplarında oturum açarken, çevrimiçi alışveriş web siteleri ödeme için 'Net-banker'ları yeniden yönlendirirken, yük arttıkça stres testi gerçekleştirmelidir vb.
# 3) Web veya e-posta uygulamalarının stres testine tabi tutulması gerekir.
# 4) Sosyal ağ web siteleri veya uygulamaları, bloglar vb. Stres testine tabi tutulmalıdır.
Ne öğreneceksin:
- Stres Testi Nedir ve Neden Stres Testi Yapıyoruz?
- Stres Testi Stratejisi
- Mobil Uygulamalar için Stres Testi
- Yük Testi ve Stres Testi Arasındaki Fark
- Örnek Test Durumları
- 5 En İyi Stres Testi Yazılımı
- Sonuç
- Önerilen Kaynaklar
Stres Testi Nedir ve Neden Stres Testi Yapıyoruz?
Stres testi, donanım veya yazılımı ağır yük koşullarında kararlılığı için test etme süreci olarak tanımlanır. Bu test, sistemin ne zaman bozulacağı (bir dizi kullanıcı ve sunucu talebi vb. Açısından) sayısal noktayı ve bununla ilgili hata işlemeyi bulmak için yapılır.
Stres testi sırasında, test edilen uygulama (AUT), kırılma noktasını doğrulamak ve hata işlemenin ne kadar iyi yapıldığını görmek için belirli bir süre boyunca ağır bir yükle bombardımana tutulur.
Misal: 7-8 GB'lık bir dosyayı kopyalamaya çalıştığınızda MS Word 'Yanıt Vermiyor' hata mesajı verebilir.
Word'ü çok büyük boyutlu bir dosyayla bombaladınız ve bu kadar büyük bir dosyayı işleyemedi ve sonuç olarak askıda kaldı. Normalde, yanıt vermeyi bıraktıklarında uygulamaları Görev Yöneticisinden öldürürüz, bunun arkasındaki sebep, uygulamaların strese girmesi ve yanıt vermemesidir.
Aşağıda, Stres testi yapmanın bazı teknik nedenleri verilmiştir:
- Anormal veya aşırı yük koşullarında sistem davranışını doğrulamak için.
- Kullanıcıların, isteklerin vb. Sayısal değerlerini bulmak, sonrasında sistem bozulabilir.
- Uygun mesajlar göstererek hatayı nazikçe halledin.
- Bu tür koşullara hazırlıklı olmak ve kod temizleme, DB temizleme gibi ihtiyati tedbirleri almak.
- Veri işlemeyi sistem bozulmadan önce doğrulamak için, yani verilerin silinip kaydedilmediğini, kaydedilip kaydedilmediğini vb.
- Bu tür kırılma koşulları vb. Altında güvenlik tehdidini doğrulamak için
Stres Testi Stratejisi
Bu bir tür işlevsel olmayan testtir ve bu test genellikle bir web sitesinin veya uygulamanın işlevsel testi tamamlandıktan sonra yapılır. Test senaryoları, test etme yöntemi ve hatta test etme araçları zaman zaman değişebilir.
Aşağıda, test sürecinizi stratejik hale getirmenize yardımcı olacak bazı ipuçları verilmiştir:
- En çok erişilecek ve sistemi bozma eğiliminde olabilecek senaryoları, işlevleri vb. Belirleyin. Bir finans uygulamasında olduğu gibi, en yaygın kullanılan işlev para transferidir.
- Sistemin belirli bir günde karşılaşabileceği yükü, yani hem maksimum hem de minimumda tanımlayın.
- Ayrı oluşturun test planı senaryo, test senaryosu ve test paketi.
- Farklı bellek, işlemci vb. İle test etmek için 3-4 farklı bilgisayar sistemi kullanın.
- Farklı sürümlere sahip web uygulamaları için 3-4 farklı tarayıcı kullanın.
- İdeal olarak, kesme noktasının altında, kesme noktasında ve kesme noktasından sonraki değeri bulun (sistem hiç yanıt vermediğinde), bir test yatağı ve bunların etrafında veriler oluşturun.
- Web uygulamaları söz konusu olduğunda, yavaş bir ağ ile de stres testi yapmaya çalışın.
- Bir veya iki turda testlerin sonucuna atlamayın, en az 5 tur için aynı testleri gerçekleştirin ve ardından bulgularınızı sonuçlandırın.
- Web sunucusunun ideal yanıt süresini ve kesme noktasında saatin kaç olduğunu bulun.
- Uygulama davranışını uygulamanın farklı noktalarında kırılma noktasında bulun, örneğin uygulamayı başlatırken, oturum açarken, oturum açma işleminden sonra bazı eylemleri gerçekleştirirken vb.
Mobil Uygulamalar için Stres Testi
Yerel mobil uygulamalar için stres testi, web uygulamalarından biraz farklıdır. Yerel uygulamalarda, büyük veriler eklenerek yaygın olarak kullanılan ekranlar için bir stres testi yapılır.
Aşağıda, yerel mobil uygulamalar için bu testin bir parçası olarak yapılan bazı doğrulamalar verilmiştir:
- Büyük miktarda veri gösterildiğinde uygulama kilitlenmez. Bir e-posta uygulamasında olduğu gibi, yaklaşık 4-5 lakh alınan e-posta kartı, alışveriş uygulamaları için, aynı miktarda ürün kartı vb.
- Kaydırma sorunsuzdur ve yukarı veya aşağı kaydırılırken uygulama takılmaz.
- Kullanıcı, büyük listeden bir kartın ayrıntılarını görüntüleyebilmeli veya kart üzerinde bazı işlemler yapabilmelidir.
- Bir öğeyi 'Favori' olarak işaretlemek, alışveriş sepetine bir öğe eklemek vb. Gibi uygulamadan sunucuya lakh kadar güncelleme gönderme.
- Uygulamayı 2G ağında büyük verilerle yüklemeyi deneyin, uygulama kilitlendiğinde veya çöktüğünde uygun bir mesaj göstermelidir.
- Büyük veri ve yavaş bir 2G ağı vb. Olduğunda uçtan uca bir senaryo deneyin.
Mobil uygulamalarda test etme stratejiniz aşağıdakiler olmalıdır:
- Büyük veriye sahip ekranları hedeflemek için kart, resim vb. İçeren ekranları belirleyin.
- Benzer şekilde, en sık kullanılacak işlevleri belirleyin.
- Test yatağını oluştururken orta ve düşük kaliteli telefonları kullanmayı deneyin.
- Paralel cihazlarda aynı anda test etmeye çalışın.
- Emülatör ve simülatörlerde bu testten kaçının.
- Güçlü olduklarından Wifi bağlantılarını test etmekten kaçının.
- Sahada en az bir stres testi yapmayı deneyin.
Yük Testi ve Stres Testi Arasındaki Fark
S.No. | Stres testi | Yük testi |
---|---|---|
bir | Bu test, sistemin kırılma noktasını bulmak için yapılır. | Bu test, sistemin beklenen bir yük altında performansını doğrulamak için yapılır. |
iki | Bu test, yükün normal sınırın ötesine geçmesi durumunda sistemin beklendiği gibi davranıp davranmayacağını bulmak için yapılır. | Bu test, beklenen belirli yük için sunucunun yanıt süresini kontrol etmek için yapılır. |
3 | Hata işleme de bu testte doğrulanır. | Hata işleme yoğun bir şekilde test edilmemiştir. |
4 | Bu ayrıca güvenlik tehditlerini, bellek sızıntılarını vb. Kontrol eder. | Böyle bir test zorunlu değildir. |
5 | Sistemlerin kararlılığını kontrol eder. | Sistemin güvenilirliğini kontrol eder. |
6 | Test, maks. olası kullanıcı, istek vb. | Test, maksimum kullanıcı sayısı, istek vb. İle yapılır. |
Stres Testi - Yük Testi
Örnek Test Durumları
Testiniz için oluşturacağınız test senaryoları, uygulamaya ve gereksinimlerine bağlı olacaktır. Test senaryolarını oluşturmadan önce, odak alanlarını, yani anormal bir yük durumunda kırılma eğiliminde olacak işlevleri bildiğinizden emin olun.
Aşağıda, testinize dahil edebileceğiniz bazı örnek test senaryoları verilmiştir:
- Sistem kesme noktasına ulaştığında, yani maksimum numarayı geçtiğinde uygun bir hata mesajının gösterilip gösterilmediğini doğrulayın. izin verilen kullanıcıların veya isteklerin oranı.
- Çeşitli RAM, işlemci ve ağ vb. Kombinasyonları için yukarıdaki test durumunu kontrol edin.
- Maksimum hayır olduğunda sistemin beklendiği gibi çalıştığını doğrulayın. Kullanıcı veya istek işleniyor. Ayrıca çeşitli RAM, işlemci ve ağ vb. Kombinasyonları için yukarıdaki test durumunu kontrol edin.
- İzin verilenden daha fazla iken hayır. kullanıcı veya talepler aynı işlemi gerçekleştiriyor (aynı ürünleri bir alışveriş sitesinden satın almak veya para transferi yapmak gibi) ve sistem yanıt vermezse, verilerle ilgili uygun bir hata mesajı gösterilir (kaydedilmedi mi? - uygulama).
- İzin verilen numaradan fazla olup olmadığını kontrol edin. (bir kullanıcının oturum açması, bir kullanıcının uygulamayı veya web bağlantısını başlatması, bir kullanıcının bir ürünü seçmesi vb. gibi) ve sistem yanıt vermezse, veriler hakkında uygun bir hata mesajı gösterilir. (kaydedilmedi mi? - uygulamaya bağlıdır).
- Kırılma noktası kullanıcıları veya talepleri için yanıt süresinin bir kabul değerinde olup olmadığını doğrulayın.
- Ağ çok yavaş olduğunda uygulamanın veya web sitesinin performansını doğrulayın, 'zaman aşımı' durumu için uygun bir hata mesajı gösterilmelidir.
- Diğer uygulamanın etkilenip etkilenmediğini kontrol etmek için üzerinde çalışan birden fazla uygulama bulunan bir sunucu için yukarıdaki tüm test durumlarını doğrulayın.
Testleri yürütmeden önce şunlardan emin olun:
- Test edilen uygulamanın tüm işlevsel hataları giderilir ve doğrulanır.
- Tüm uçtan uca sistem hazırdır ve entegrasyon test edilmiştir.
- Testi etkileyecek hiçbir yeni kod kontrolü yapılmaz.
- Diğer ekipler test programınız hakkında bilgilendirilir.
- Bazı ciddi sorunların ortaya çıkması durumunda yedekleme sistemleri oluşturulur.
5 En İyi Stres Testi Yazılımı
Stres Testi manuel olarak yapıldığında, çok karmaşık ve meşakkatli bir iştir. Ayrıca size beklenen sonuçları vermeyebilir.
örneklerle birlikte unix'te kesme komutu
Otomasyon araçları size beklenen sonuçları verebilir ve bunları kullanarak gerekli test yatağını oluşturmak nispeten kolaydır. Normal fonksiyonel testiniz için kullandığınız araçlar stres testi için yeterli olmayabilir.
Bu nedenle, yalnızca bu test için ayrı bir araç isteyip istemediklerine sizin ve ekibinizin karar vermesi gerekir. Süiti gece çalıştırmanız başkaları için de yararlıdır, böylece onların işlerinin aksamaması. Otomasyon araçlarını kullanarak, paketi gece çalışacak şekilde programlayabilirsiniz ve sonuçlar ertesi gün sizin için hazır olacaktır.
Aşağıda en çok önerilen araçların listesi verilmiştir:
# 1) Yük Çalıştırıcısı:
LoadRunner HP tarafından yük testi için tasarlanmış bir araçtır, ancak stres testleri için de kullanılabilir.
Yük ve stres testi talepleri ve kullanıcıları oluşturmak için VuGen yani Virtual User Generator kullanır. Bu araç, sonuçları grafikler, çizelgeler vb. Şeklinde çizmeye yardımcı olabilecek iyi analiz raporlarına sahiptir.
# 2) Neoload:
Neoload, web ve mobil uygulamaların test edilmesinde yardımcı olan ücretli bir araçtır.
Sistemin performansını doğrulamak ve sunucunun yanıt süresini bulmak için 1000'den fazla kullanıcıyı simüle edebilir. Ayrıca hem yük hem de stres testi için Cloud ile entegre olur. İyi bir ölçeklenebilirlik sağlar ve kullanımı çok kolaydır.
# 3) JMeter:
JMeter JDK 5 ve üzeri sürümlerle çalışan açık kaynaklı bir araçtır. Bu aracın odak noktası çoğunlukla web uygulamalarını test etmektir. Ayrıca LDAP, FTP, JDBC veritabanı bağlantılarını vb. Test etmek için de kullanılabilir.
# 4) Öğütücü:
Grinder, yük ve stres testi için kullanılan açık kaynaklı ve Java tabanlı bir araçtır.
Parametrelendirme, testler çalışırken dinamik olarak yapılabilir. Sonuçları daha iyi bir şekilde analiz etmenize yardımcı olacak iyi raporlama ve iddialara sahiptir. Testleri oluşturmak ve düzenlemek için IDE olarak kullanılabilen bir Konsolu ve test amacıyla yükü oluşturmak için Aracıları vardır.
# 5) WebYükleme:
Webyükü aracın hem ücretsiz hem de ücretli bir sürümü vardır. Bu ücretsiz sürüm, 50'ye kadar kullanıcı oluşturmaya izin verir.
Bu araç hem web hem de mobil uygulama stres kontrolünü destekler. HTTP, HTTPS, PUSH, AJAX, HTML5, SOAP vb. Gibi farklı protokolleri destekler. Bir IDE, yük oluşturma konsolu, analiz panosu ve entegrasyonlara (Jenkins, APM araçları vb. İle entegre olmak için) sahiptir.
Sonuç
Stres testi, kırılma noktasını bulmak ve sistem yanıt vermediğinde uygun mesajların gösterilip gösterilmediğini görmek için sistemi aşırı yük koşulları altında test etmeye tamamen odaklanır. Test sırasında hafızayı, işlemciyi vb. Vurgular ve ne kadar iyi kurtarıldıklarını kontrol eder.
Stres testi, bir tür fonksiyonel olmayan testtir ve genellikle fonksiyonel testten sonra yapılır. Yük testinin de bir gerekliliği olduğunda, bu test aşırı yük testi olarak yapılabilir. Zamanın% 90'ında aynı otomasyon aracı hem yük hem de stres testi için kullanılabilir.
Umarım Stres Testi kavramı hakkında harika bir fikir edinmişsinizdir !!
Önerilen Kaynaklar
- HP LoadRunner Öğreticileriyle Yük Testi
- Performans Testi - Yük Testi - Stres Testi (Fark)
- Yeni Başlayanlar İçin Yük Testi Tam Kılavuzu
- En İyi Yazılım Test Araçları 2021 (QA Test Otomasyon Araçları)
- Alfa Testi ve Beta Testi (Tam Kılavuz)
- Web Uygulaması Sızma Testi İçin Yeni Başlayanlar Kılavuzu
- WAPT Kullanarak Web Uygulama Yükü, Stres ve Performans Testi
- Fonksiyonel Test ve Fonksiyonel Olmayan Test