jMeter - Test Planı Öğeleri

Bir JMeter Test Planı, aşağıda tartışılan test öğelerinden oluşur. Bir Test Planı en az bir İplik Grubundan oluşur. Her bir İş Parçacığı Grubu içine, bir veya daha fazla diğer öğenin bir kombinasyonunu yerleştirebiliriz - Örnekleyici, Mantık Denetleyicisi, Yapılandırma Öğesi, Dinleyici ve Zamanlayıcı. Her Örnekleyiciden önce bir veya daha fazla Ön işlemci öğesi, ardından Son işlemci öğesi ve / veya Onay öğesi gelebilir. Bu unsurların her birini ayrıntılı olarak görelim -

Konu Grubu

Diş Grubu öğeleri, test planınızın başlangıç ​​noktalarıdır. Adından da anlaşılacağı gibi, iplik grubu elemanları, JMeter'ın test sırasında kullanacağı iplik sayısını kontrol eder. İplik Grubu aracılığıyla aşağıdakileri de kontrol edebiliriz -

  • İplik sayısının ayarlanması

  • Hızlanma süresinin ayarlanması

  • Test yineleme sayısını ayarlama

Konu Grubu Kontrol Paneli şuna benzer -

İplik Grubu Paneli aşağıdaki bileşenleri barındırır -

  • Action to be taken after a Sampler error - Testin yürütülmesi sırasında herhangi bir hata meydana gelirse, teste -

    • Continue testteki bir sonraki öğeye

    • Stop Thread Mevcut İş Parçacığını durdurmak için.

    • Stop Test tamamen, devam etmeden önce hatayı incelemek istemeniz durumunda.

  • Number of Threads - Sunucu uygulamanıza kullanıcı veya bağlantı sayısını simüle eder.

  • Ramp-Up Period JMeter'ın tüm iş parçacıklarını çalıştırmasının ne kadar süreceğini tanımlar.

  • Loop Count - Testin kaç kez yürütüleceğini tanımlar.

  • Scheduler checkbox - Seçildikten sonra, Zamanlayıcı Yapılandırması bölümü kontrol panelinin altında görünür.

  • Scheduler Configuration - Testi çalıştırmanın başlangıç ​​ve bitiş zamanını yapılandırabilirsiniz.

Kontrolörler

JMeter'da iki tür Denetleyici vardır - Örnekleyiciler ve Mantık Denetleyicileri .

Örnekleyiciler

Örnekleyiciler, JMeter'ın bir sunucuya belirli türde istek göndermesine izin verir. Hedef sunucudan bir sayfa için kullanıcı isteğini simüle ederler. Örneğin, bir HTTP hizmetinde bir POST, GET veya DELETE gerçekleştirmeniz gerekiyorsa, HTTP İsteği örnekleyicisi ekleyebilirsiniz.

Bazı yararlı örnekleyiciler:

  • HTTP İsteği
  • FTP İsteği
  • JDBC İsteği
  • Java İsteği
  • SABUN / XML İsteği
  • RPC İstekleri

Aşağıdaki ekran görüntüsü bir HTTP İstek Örnekleyici Kontrol Panelini göstermektedir -

Mantık Denetleyicileri

Mantık Denetleyicileri, bir Thread içindeki Örnekleyicilerin işlenme sırasını kontrol etmenize izin verir. Mantık denetleyicileri, alt öğelerinden herhangi birinden gelen bir isteğin sırasını değiştirebilir. Bazı örnekler şunlardır: ForEach Controller, While Controller, Loop Controller, IF Controller, Run Time Controller, Interleave Controller, Throughput Controller ve Run Once Controller.

Aşağıdaki ekran görüntüsü bir Loop Controller Kontrol Panelini göstermektedir -

Aşağıdaki liste, JMeter'ın sağladığı tüm Mantık Denetleyicileri içerir -

  • Basit Denetleyici
  • Döngü Denetleyicisi
  • Sadece Bir Kez Denetleyici
  • Interleave Denetleyicisi
  • Rastgele Kontrolör
  • Rastgele Sıra Denetleyicisi
  • Verim Denetleyicisi
  • Çalışma Zamanı Denetleyicisi
  • Denetleyici ise
  • Denetleyici iken
  • Anahtar Denetleyicisi
  • ForEach Denetleyicisi
  • Modül Denetleyicisi
  • Denetleyiciyi Dahil Et
  • İşlem Kontrolörü
  • Kayıt Kontrolörü

Test Parçaları

Test Parçası, Diş Grubu öğesiyle aynı seviyeye yerleştirilmiş özel bir öğe türüdür. Bir Modül Denetleyicisi veya bir Include_Controller tarafından başvurulmadıkça yürütülmemesi bakımından bir İş Parçacığı Grubundan ayırt edilir. Bu öğe tamamen Test Planlarında kodun yeniden kullanımı içindir.

Dinleyiciler

Dinleyiciler, Örnekleyicilerin sonuçlarını bazı günlük dosyalarında tablolar, grafikler, ağaçlar veya basit metin şeklinde görüntülemenizi sağlar. JMeter'ın bir Örnekleyici bileşeni yürütülürken, test senaryoları hakkında JMeter tarafından toplanan verilere görsel erişim sağlarlar.

Dinleyiciler, doğrudan test planı dahil olmak üzere testin herhangi bir yerine eklenebilir. Yalnızca kendi seviyelerindeki veya altındaki öğelerden veri toplayacaklar. Aşağıdaki liste, JMeter'ın sunduğu tüm Dinleyicilerden oluşur -

  • Örnek Sonuç Kaydetme Yapılandırması
  • Grafik Tam Sonuçları
  • Grafik Sonuçları
  • Spline Görselleştirici
  • Onay Sonuçları
  • Sonuç Ağacını Görüntüle
  • Toplu Rapor
  • Sonuçları Tablodaki Görüntüle
  • Basit Veri Yazıcısı
  • Sonuçları İzleyin
  • Dağılım Grafiği (alfa)
  • Toplu Grafik
  • Posta Görselleştirici
  • BeanShell Dinleyici
  • Özet raporu

Zamanlayıcılar

Varsayılan olarak, bir JMeter iş parçacığı, her örnekleyici arasında duraklamadan istekleri gönderir. İstediğin bu olmayabilir. Her istek arasında beklenecek bir süre tanımlamanıza izin veren bir zamanlayıcı öğesi ekleyebilirsiniz.

Aşağıdaki liste, JMeter'in sağladığı tüm zamanlayıcıları göstermektedir -

  • Sabit Zamanlayıcı
  • Gauss Rastgele Zamanlayıcı
  • Düzgün Rastgele Zamanlayıcı
  • Sabit Verim Zamanlayıcısı
  • Zamanlayıcıyı Senkronize Etme
  • JSR223 Saati
  • BeanShell Saati
  • BSF Saati
  • Poisson Rastgele Zaman

Aşağıdaki ekran görüntüsü bir Sabit Zamanlayıcı Kontrol Panelini göstermektedir -

İddialar

Onaylar, bir Örnekleyici kullanılarak yapılan isteğinizin yanıtına bazı doğrulama testleri eklemenize olanak tanır. İddiaları kullanarak, uygulamanızın doğru verileri döndürdüğünü kanıtlayabilirsiniz. JMeter, bir iddia başarısız olduğunda vurgular.

Aşağıdaki liste, JMeter'ın sunduğu tüm iddiaları içermektedir -

  • Beanshell İddiası
  • BSF İddiası
  • İddiayı Karşılaştır
  • JSR223 Onaylama
  • Yanıt Onaylama
  • Süre Onaylama
  • Boyut Beyanı
  • XML Onaylama
  • BeanShell Assertion
  • MD5Hex Assertion
  • HTML Onaylama
  • XPath Onaylama
  • XML Şeması Onaylama

Aşağıdaki ekran görüntüsü bir Yanıt Onaylama Kontrol Panelini göstermektedir -

Yapılandırma Öğeleri

Yapılandırma Öğeleri, Örnekleyiciler tarafından kullanılacak varsayılanlar ve değişkenler oluşturmanıza olanak sağlar. Örnekleyiciler tarafından yapılan istekleri eklemek veya değiştirmek için kullanılırlar.

Bunlar, parçası oldukları kapsamın başlangıcında, aynı kapsamda bulunan herhangi bir Örnekleyiciden önce yürütülür. Bu nedenle, bir Yapılandırma Öğesine yalnızca yerleştirildiği dalın içinden erişilir.

Aşağıdaki liste, JMeter'in sağladığı tüm Konfigürasyon Öğelerini içerir -

  • Counter
  • CSV Veri Kümesi Yapılandırması
  • FTP İstek Varsayılanları
  • HTTP Yetkilendirme Yöneticisi
  • HTTP Önbellek Yöneticisi
  • HTTP Çerez Yöneticisi
  • HTTP Proxy Sunucusu
  • HTTP İstek Varsayılanları
  • HTTP Üstbilgi Yöneticisi
  • Java İstek Varsayılanları
  • Anahtar Deposu Yapılandırması
  • JDBC Bağlantı Yapılandırması
  • Oturum Açma Yapılandırma Öğesi
  • LDAP İstek Varsayılanları
  • LDAP Genişletilmiş İstek Varsayılanları
  • TCP Örnekleyici Yapılandırması
  • Kullanıcı Tanımlı Değişkenler
  • Basit Yapılandırma Öğesi
  • Rastgele değişken

Ön işlemci Elemanları

Ön işlemci elemanı, bir örnekleyici çalıştırılmadan hemen önce çalışan bir şeydir. Genellikle, bir Örnek İsteğin ayarlarını çalıştırmadan hemen önce değiştirmek veya yanıt metninden çıkarılmayan değişkenleri güncellemek için kullanılırlar.

Aşağıdaki liste, JMeter'in sağladığı tüm ön işlemci unsurlarını içermektedir -

  • HTML Bağlantı Ayrıştırıcısı
  • HTTP URL Yeniden Yazma Değiştirici
  • HTTP Kullanıcı Parametresi Değiştirici
  • Kullanıcı Parametreleri
  • JDBC Ön İşlemcisi
  • JSR223 Ön İşlemci
  • RegEx Kullanıcı Parametreleri
  • BeanShell Ön İşlemcisi
  • BSF Ön İşlemcisi

İşlemci Sonrası Öğeler

Bir son işlemci, bir örnekleyici yürütmeyi bitirdikten sonra çalıştırılır. Bu öğe, çoğunlukla yanıt verilerini işlemek için, örneğin daha sonra kullanmak üzere belirli bir değeri almak için kullanılır.

Aşağıdaki liste, JMeter'ın sağladığı tüm İşlem Sonrası Öğeleri içerir

  • Normal İfade Çıkarıcı
  • XPath Çıkarıcı
  • Sonuç Durum Eylem İşleyici
  • JSR223 Son İşlemci
  • JDBC PostProcessor
  • BSF Son İşlemci
  • CSS / JQuery Çıkarıcı
  • BeanShell Son İşlemci
  • PostProcessor Hatalarını Ayıkla

Test Öğelerinin Yürütme Sırası

Test planı öğelerinin yürütme sırası aşağıdadır -

  • Yapılandırma öğeleri
  • Pre-Processors
  • Timers
  • Sampler
  • İşlem Sonrası İşlemciler (SampleResult boş değilse)
  • İddialar (SampleResult boş değilse)
  • Dinleyiciler (SampleResult null değilse)