Jmeter ile belirtilen site üzerinde performans testi gerçekleştirilmesi
Merhaba,
Sizlere Jmeter ile küçük ayarlamalar gerçekleştirdikten sonra belirttiğiniz sayfa için performans test yapılması için plug&play ayarında bir örnek vermek istedim.
Oluşturduğum örnek için aşağıda detaylar kısmında neler içerdiğini ve bir alt kısımda ise aşama aşama neler ve nasıl yapıldığını hakkında ekledim.
Oluşturulan JMX, GUI üzerinden RAM kullanımını arttıracağından ve performans düşüklüğü yaratacağından oluşturulmuş JMX'i panel üzerinden kontrol etme ve logların okunmasına değindim.
Umarım sizler için WEB testlerinizde bir kaynak olabilmiştir.
Github - Inanc Ozkul linkinden ayrıca proje dosyalarına ulaşabilirsiniz.
Ozan Eser - Kurulum & Ozan Eser - İlk Test linklerinden kurulum ve ilk test için yardım alabilirsiniz.
Test Detayları & Yapılacaklar:
Dashboard için Jmeter Plugins sayfası ile plugin indirip import etmek.
Thread Group ekleme ve ayarları
Http Request ekleme ve ayarları
Listener - View Results Tree ekleme
Gaussian Timer ekleme ve ayarları
Assertions Ekleme ve ayarlar
Oluşturulmuş load testin Windows CLI üzerinde açılması
CLI üzerinden loglanmış kayıtların GUI üzerinden çıktı incelenmesi
CLI üzerinden loglanlanmış kayıtların Dashboard kaydı alınması ve Dashboard üzerinden çıktı incelenmesi
Hazırlık:
İlk olarak dashboard için iki adet 3 Basic Graphs ve 5 Additional Graphs isimli 2 adet plugin kullandım. Alt tarafta bulunan siteye girerek download'ı gerçekleştirebilirsiniz.
Bu graphlara Jmeter Plugins sitesi ile ulaşabilirsiniz.
3 Basic Graphs plugin;
5 Additional Graphs plugin;
Download işlemi bittikten sonra çıkan dosyaları
EXT ile olanları JMeter Lib altında EXT klasörüne,
LIB dosyalarını ise JMeter kurulu olduğu yerde lib içerisine ekleyiniz
Örnek Detayları:
Thread groups: Thread group elementi test planlarımızın başlangıç noktalarıdır. Adından da anlaşılacağı gibi, thread group elementi JMeter’in test sırasında kullanacağı thread sayısını kontrol eder.
HTTP Request: Bu sampler, bir web sunucusuna http/https request’i göndermemizi sağlar. Örneğin; JMeter, Google web sitesine bir HTTP isteği gönderir ve bu web sitesinden HTML dosyaları veya görüntü alır.Http request configleri arasında yer alan Protocol alanı default olarak http’dir. Göndereceğimiz request http ise protocol alanını boş bırakabiliriz.
HTTPS Request ayarlamaları: Biz sadece siteyi ziyaret edip testimizi bu şekilde gerçekleştireceğimiz için Protocol ve Server Name girmeliyiz. HTTP request configleri arasında yer alan Protocol alanı default olarak http’dir. Göndereceğimiz request http ise protocol alanını boş bırakabiliriz
Listener ->View Results Tree seçimi: Listener, Sampler’lar tarafından yapılan isteklerin sonuçlarını tablolar, grafikler, ağaç tipi yapılarda veya log biçiminde görüntülemenizi sağlar. JMeter’da bir Sampler bileşeni yürütüldüğünde, test senaryoları hakkında JMeter tarafından toplanan verilere görsel erişim sağlar.Listener, doğrudan test planının altında olmak üzere testin herhangi bir yerine eklenebilir. Yalnızca aynı ve alt seviyelerindeki elementlerden data toplarlar. Aşağıdaki resim JMeter tarafından sağlanan Listener’ları göstermektedir.
Thread Group Ayarlamaları: Her thread aslında test edilen uygulamayı kullanan bir kullanıcıyı temsil eder. Temel olarak, her thread server’a bir gerçek kullanıcı isteği simüle eder. Örneğin, Number of Threads (users) 100 olarak ayarlarsak; JMeter, test edilen hedef sunucuya 100 kullanıcı isteği oluşturacak ve simüle edecektir.
Oluşturulan örneğin GUI üzerinde çalıştırılması:
Timer ekleme: Her threadler arasında durdur başlat ayarlamaları yapmak için eklenmektedir.
Timer Ayarları: 0.5'den 1.5 saniyeye kadar threadler arasındaki bekleme ayarları için yapılması gerekenler.
Assertions Ekleme: Assertion, JMeter içinde server’a gönderilen request’lerin response’larını valide etmek için kullanılır. Assertion, beklenen sonucun (expected result) request’in runtime’daki gerçek sonucuyla doğruladığımız bir işlemdir. JMeter’da belirli bir sampler ve subsampler’lara assertion ekleyerek bunu gerçekleştirebiliriz. Hatta assertion’ları JMeter değişkenlerine de uygulayabiliriz. Ayrıca Thread group’a Assertion Listener ekleyerek sonuçları görüntüleyebiliriz. Başarısız(fail) olan caseler diğer tüm listener’lar tarafından da görüntülenir. Bu hususa dikkat edilmesi gerekmektedir.
Assertions Ayarları:
Oluşturulmuş JMX'in GUI kullanılmadan CLI(Command Line Mod)üzerinden çalıştırılması:
Oluşturulan JMX'in GUI kullanılmadan CLI(Command Line Mod) üzerinden çalıştırıldıktan sonra çıktıların kaydedilmesi
Çıktıların GUI üzerinde gözlemlenmesi
Response Codes per Second eklenmesi
Summary Report Eklenmesi
Summary Report Ayarları ve oluşturulan JML kaydının import edilip detay incelenmesi
Çıktıların Dashboard üzerinde gösterilmesi
CLI komutu
Oluşturulan Dashboard detayları
Dashboard içeriği
Kaynak: Micheal Smith
Etiketler : [ 6 ] Jmeter, Performance, Load, Testing, Stress, Non gui,
Giriş yap |
Bu başlıkta herhangi bir yorum bulunmamaktadır |