jmeter processors controllers
JMeter'deki Ön İşlemciler ve Denetleyicilere Genel Bakış (Bölüm-III):
=> Kapsamlı ücretsiz JMeter eğitimlerini buradan takip edin
Bu makale, kullanıcılara JMeter'da Ön İşlemciler, Son İşlemciler ve denetleyiciler kullanımı konusunda yol gösterecektir. Kontrolörler, test senaryolarınızı oluşturdukları için çok kullanışlıdır.
Yanıt süresini ve diğer performans faktörlerini izlemek için bir sunucuya gönderilen kendi istek sıranızı yapılandırmak istediğiniz farklı senaryoları test etmek isteyebilirsiniz.
Ne öğreneceksin:
- Ön İşlemciler
- Kullanıcı Parametreleri
- Örnek Zaman Aşımı
- Kontrolörler
- Gerçek Zamanlı Örnek
- JMeter’in Kayıt Şablonu
- Sonuç
- Önerilen Kaynaklar
Ön İşlemciler
Bunlar, bir örnekleyici yürütülmeden önce çalıştırılan öğelerdir. Talepte bazı değişiklikler yapmak istediğiniz örnekleyiciye Ön İşlemci ekleyebilirsiniz.
Bir vakanın en basiti, bir HTTP İsteğiyle 'Örnek Zaman Aşımı' ön işlemcisinin eklenmesi olabilir, böylece bu istek yalnızca belirli bir süre boyunca çalışır. Ayrıca, bu değişikliğin yalnızca ana Örnekleyici için yapılmasını sağlar.
Aşağıda JMeter'da kullanılan Ön İşlemcilerden bazıları verilmiştir:
- Bean Shell Ön İşlemcisi
- HTML Bağlantı Ayrıştırıcısı
- HTTP URL Yeniden Yazma
- JDBC Ön İşlemcisi
- Örnek Zaman Aşımı
- Kullanıcı Parametreleri
En sık kullanılanlar aşağıda örneklerle açıklanmıştır. Projelerinizde hepsine ihtiyacınız olabilir veya olmayabilir. Projenizle ilgili senaryoları belirlemeye çalışın ve gerçek zamanlı performans senaryolarını kapsamanıza yardımcı olacakları uygulamaya çalışın.
Kullanıcı Parametreleri
Kullanıcı Parametreleri, Örnekleyicilerde kullanılmadan önce değişkenlerin değerlerini tanımlamak için kullanılır. JMeter bu Ön İşlemci öğesini çalıştırdığında, değerleri aynı iş parçacığı grubu içindeki herhangi bir Örnekleyici tarafından referans alınabilen değişkenlerde depolar.
ürünlerini denemeniz için size ödeme yapan şirketler

'Kullanıcı Parametreleri' ndeki kullanıcı sayısından daha fazla iş parçacığına sahipseniz, ekstra iş parçacıkları değerleri yeniden yineleyecektir.
Örneğin, iş parçacığı grubunuzda 5 kullanıcı var, ancak ön işlemcide sadece 3 kullanıcı var, ardından 4incive 5inciiplik kullanacak param1 ve param2 .

Örnek Zaman Aşımı
Bu ön işlemci, istekler için zaman aşımı süresini tanımlamak için kullanılır.
Örneğin, 400 milisaniyeden bir örnek süre koyduysanız, zaman> 400 alan tüm isteklerde başarısız bir yanıt olacaktır. Lütfen aşağıdaki ekran görüntülerine bakın.


Kontrolörler
Kontrolörler, gerçek zamanlı bir JMeter test planı oluşturmada çok önemlidir. İsteklerin sunucuya gönderilme sırasını tanımlar.
Örneğin, Bir kez oturum açmasını ve arama yapmasını istediğiniz bir web uygulamasını test etmek istiyorsanız, öğe seçimi tüm yinelemeler için tek tek gitmeyi ister. Denetleyiciler, test edilen sunucuya giden istek akışını yöneterek bunu mümkün kılar.
Aşağıda, JMeter'da en sık kullanılan kontrolörler bulunmaktadır
- Basit Denetleyici
- Modül Denetleyicisi
- Sadece Bir Kez Denetleyici
- Interleave Denetleyicisi
- Döngü Denetleyicisi
- Denetleyici ise
- Her Denetleyici İçin
- Kayıt Kontrolörü vb.,
Basit Denetleyici
Basit kontrolör herhangi bir özel işlevi yerine getirmez. Test planınızı kolayca anlaşılır hale getirmek için benzer isteklerinizi saklayabileceğiniz bir tür kaptır.


Döngü Denetleyicisi
İplik Grubunda belirtilenden daha fazla yineleme çalıştırmak için belirli bir istek istiyorsanız, bunları Döngü Denetleyicisi altına koyabilir ve denetleyici ayarlarında döngü sayısını girebilirsiniz.
Misal: 1 kullanıcı ve 3 yinelemeli bir iş parçacığı grubunuz varsa, bu grup altındaki tüm istekleriniz 3 kez çalışacaktır. Şimdi, döngü sayısı 2 olan bir döngü denetleyicisi altında iki HTTP Örnekleyiciniz varsa, bu Örnekleyicilerin ikisi de 1 * 3 * 2 = 6 kez çalışır.
Lütfen daha fazla açıklayan aşağıdaki ekran görüntülerine bakın


Sadece Bir Kez Denetleyici
Bu denetleyici, iş parçacığı grubunda birden fazla iş parçacığınız olsa bile belirli bir isteği yalnızca bir kez çalıştırmak istediğinizde kullanılır. Düşünülebilecek en basit örnek 'Bir web sitesi ana sayfasını getirme' veya 'Bir web uygulamasında oturum açma' dır. Gerçek Zamanlı senaryo, bunun yalnızca bir kez olmasını ve bir şeyin birden çok kez olması için arama veya düzenleme / silme gibi diğer isteklerin olmasını ister.
Yalnızca bir kez yürütülecek olan istek, Bir Kez Denetleyici altına yerleştirilebilir. Referans için aşağıdaki ekran görüntüsüne bakın. Bir kez Yalnızca Denetleyici ayarları, ana iş parçacığı grubu ayarlarını atlar.

Kayıt Kontrolörü
Basit Denetleyici gibi, Kayıt Denetleyicisi de sunucuya gönderilen taleplerin herhangi bir sırasını değiştirmez. HTTP (S) Script Recorder ile birlikte kullanılır. Bu Test Dışı Öğe ile kaydedilen tüm istekler kayıt kontrolörü altında kaydedilir.
Sunucuya yapılan kayıtlı istekleri kaydetmek için hedef denetleyiciyi belirtmeniz gerekir.

Kayıt denetleyicisi ve HTTP (ler) komut dosyası kaydedici, testçiler talep URL'leri ve parametreler hakkında bilgiye sahip olmadığında devreye girer. Sunucularına gelen tüm istekleri kolayca kaydedebilir ve yakalayabilirler. Bu hem mobil hem de web projeleri için çalışır.
Verim Denetleyicisi
Bu kontrolör, yürütme akışını kontrol etmek için de kullanılır. Aşağıdaki kırpmada görüldüğü gibi, bu denetleyici ayrıca iki bölüme ayrılmıştır:

Yüzde Yürütme - Bu seçim, Jmeter'in bu denetleyicinin altına yerleştirilen Örnekleyiciler için toplam yinelemelerin yalnızca belirli bir yüzdesini yürütmesini sağlayacaktır. Bunu bir kullanıcı düzeyinde kontrol etmek için 'Kullanıcı Başına' onay kutusunu da işaretleyebilirsiniz.
Örneğin, İş Parçacığı Grubu, 10 kullanıcıya sahip olacak şekilde yapılandırılmıştır ve döngü sayısı 5'tir. Bu nedenle, toplam yinelemeler 50'dir.% Yürütme% 50'ye ayarlanırsa, Aktarım Denetleyicisi altındaki tüm Örnekleyiciler yalnızca 25 yineleme yapacaktır (50'nin% 50'si).
Toplam Yürütme Sayısı - Bu, kullanıcıların bu kontrolör altında bulunan örnekleyiciler için yineleme sayısını doğrudan belirlemelerine olanak tanır.

Interleave Denetleyicisi
Bu denetleyici, sıralamayı n sayıda şekilde değiştirerek performans testinizin kapsamını artırmanıza olanak tanır, böylece uygulamalar farklı sıralarla isteklere ulaştığında sunucudaki yükü test edebilirsiniz. Interleave Controller, altındaki örnekleyicilerle alternatif seçimler yapar.
Bu bloğun altında tutulan Basit Denetleyici gibi başka denetleyiciler olması durumunda, aralık denetleyicisi, her yineleme için bir kaptan her biri bir örnekleyici seçme ayrıcalığı verir. Daha fazla açıklamak için aşağıdaki test planını düşünün.

Bu nedenle, Jmeter her yineleme için denetleyiciler arasında alternatif olarak yineleme yapacaktır. Bu nedenle, diziden aşağıda bahsedilecektir.
İstek1 -> İstek3 -> İstek 5 - İstek2 -> İstek4 -> İstek6
Lütfen İplik Sayısı = 2 ve Döngü Sayısı = 2 ile aşağıdaki JMeter Sonuçlarına bakın.

c ++ 'da arkadaş işlevi nedir
Yukarıdaki örnekte, Jmeter sonraki döngü / yineleme ile Serpiştiriyor. Interleave Controller'da, JMeter'ın her yeni iş parçacığı ile alternatif istekler göndermesini sağlayabilecek ayarlar vardır.

Lütfen aşağıdaki sonuçlara bakın. Bu, aynı makineden gelen farklı istek sırasına sahip sunuculara sıralı veya eşzamanlı yük vurmak istediğiniz senaryolarda kullanışlıdır.

Rastgele Kontrolör
Neredeyse Interleave denetleyicisi gibi çalışır, ancak örnekleyicileri sırayla seçmez. Yalnızca alt denetleyicileri ve içlerindeki örnekleyicileri rastgele seçer.
Denetleyici ise
Denetleyici benzer şekilde çalışıyorsa, herhangi bir programlama dilinde bir IF ifadesi ele alınır. Koşul önce doğrulanır ve ardından koşul TRUE ise bu konteynerin altındaki bileşenler yürütülür, aksi takdirde IF Denetleyicisi dışındaki öğeler yürütülür.
Misal : Interleave Controller'ı içeren önceki örneklerden biriyle devam edersek, artık iki Interleave denetleyicisinden biri IF Controller ve '$ (COUNT) Koşulu altında tutuldu.<10 is added as a condition. Variable COUNT is defined in config element “User Defined Variables” and is given a value equal to 11. Configuration is described below

COUNT Değişkene bir değer tanımlama ve atama.

Koşul tanımlanıyor Denetleyici ise ayarlar. Jmeter bu koşulu doğrular ve eğer DOĞRU ise bu konteyner altındaki blokları yürütür.
Aşağıdaki test planından da görebileceğiniz gibi, IF Condition olarak değerlendirilirse sadece Request3, Request4 ve Request5 çalışacaktır. Yanlış .


Kontrolörler
Bu denetleyici, koşul yanlış hale gelene kadar altındaki bileşenleri yürütür.
Örneğin, bir süre koşulumuz olduğunu söyle ($ (count)<10), it will execute the child elements until the condition is false. To test this, there should be a counter which gets increment or decrement on each iteration and then condition is evaluated. Config Element “Counter” can be used to serve this purpose.
'Sayaç' yapılandırma öğesini 1'den başlayacak ve ardından her yinelemede artacak şekilde yapılandırın. Daha fazla açıklama için aşağıya bakın:

Eğitim videolarımızda diğer kontrolörlere değineceğiz.
Gerçek Zamanlı Örnek
Test ekibinin, test edilen sunucuya isabet eden tüm isteğin URL'lerini ve parametrelerini bilmediği bir senaryo düşünelim. Şimdi, sunucuyu test etmek için istekleri kaydetmeleri ve ardından yükü sıralı veya eşzamanlı olarak modüle etmeleri ve performans testini yapmak için bunlardan senaryolar oluşturmaları gerekir.
Adımlar
c ++ 'da bir grafik uygulama
- Kayıt Denetleyicisi için Jmeter'de bir şablon ekleyin
- Tarayıcınızda proxy'yi ayarlayın ve HTTP (s) Script Recorder'da aynı bağlantı noktasını seçin
- İstekleri kaydedin
- Test Planını değiştirin ve yükü artırın
- İşlemleri uygun şekilde gruplandırın
- Farklı istek kombinasyonlarını deneyin
JMeter’in Kayıt Şablonu
JMeter ayrıca önceden tanımlanmış bir şablona sahiptir. Dosya Menüsünden 'Şablon' seçeneğini seçin. Şablonu seçtikten sonra açılan pencerede 'Kayıt' seçeneğini seçin ve Oluştur'a tıklayın.


Bu Kayıt Şablonunu seçer seçmez, Test planına önceden eklenmiş bazı bileşenleri göreceksiniz.
- Work Bench altında HTTP (s) Script Recorder
- HTTP İstek Varsayılanları ve HTTP Çerez Yöneticisi
- Konu Grubu Altında Kayıt Denetleyicisi.
JMeter proxy sunucusuyla konuşmak için tarayıcınızda proxy ayarlarını yapabilir veya istekleri kaydetmek için CHROME Uzantı Blazemeter'ı kullanabilir ve ardından. jmx dosyasını Jmeter'e. Komut dosyasını kaydetmek ve ardından JMeter'e aktarmak için başka birçok uzantı vardır. BADBOY aracı, hem web hem de mobil isabetleri kaydetmek için Jmeter ile iyi çalışır.

Tıklamak. Kaydedilen talebi Jmeter'e aktarmak için jmx seçeneği. Şimdi Jmeter'den. jmx dosyası ve her bir istekle ilişkili istekleri ve parametreleri görün.
Sonuç
Şimdiye kadar, hepinizin JMeter'ın temel mantığını, yükü nasıl simüle ettiğini, farklı türde Örnekleyicilerle nasıl oynayacağınızı, Controller ve değişkenleri kullanarak yürütme akışını nasıl kontrol edeceğinizi çok iyi bildiğiniz varsayılmıştır. döngüleri yinelemeler boyunca çalıştırmak için işlevler. Bu kesinlikle JMeter ile ilgili eğitim serisinin sonu değil.
Birçok eğitim videosu var Jmeter'de farklı senaryolar ve her JMeter bileşeninin en iyi şekilde nasıl kullanılabileceği konusunda daha fazla el ile test uzmanlarına rehberlik edecek olanı takip etmek.
=> JMeter video eğitimlerinin tam listesini buradan kontrol edin
Lütfen yorumlarınızı veya sorularınızı bizimle paylaşın.
Önerilen Kaynaklar
- Jmeter Kontrolörleri Bölüm 1
- Jmeter Denetleyicileri Bölüm 2
- Örnekle JMeter Korelasyonuna Nasıl Ulaşılır
- JMeter'da HTTP Talepleriyle Çalışma
- JMeter'da FTP Talebi ile Çalışma
- JMeter'de Post İşlemci Kullanımı (Normal İfade Çıkarıcı)
- En İyi 5 JMeter Eklentisi ve Nasıl Kullanılacağı (Örneklerle)
- JMeter Zamanlayıcıları: Sabit, BeanShell ve Guassian Rastgele Zamanlayıcı