Jmeter’da HTTP Header Manager Kullanımı

Buse Kaya
Odeal-Tech
Published in
3 min readApr 7, 2020

Selam arkadaşlar,

Blogumuzun ikinci yazısıyla tekrar beraberiz. Bu yazımızda HTTP Header Manager’ı nasıl kullanacağımıza değineceğim. Bu neden önemli ve buna neden ihtiyacımız var? Öncelikle bu soruyu bir cevaplayalım; HTTP Proxy Server, her isteğe otomatik olarak HTTP Header Manager ekler. Bu eklemiş olduğumuz HTTP Header Manager, her test case için servere gönderilen HTTP Header’larını içerir.

İsteğin header’ına parametreler göndermek için bir HTTP Header Manager eklememiz gerekir. “Content-Type”, “Accept-Language” ve “User-Agent” gibi değişkenleri request header olarak göndermemiz gerekebilir.

HTTP Header Manager eklemek için; Add > Config Element > HTTP Header Manager adımlarını takip ederek ekleyebiliriz.

Manager’a header’ları eklediğimizde, bu header’lar otomatik olarak isteğe(request) eklenir. Tüm Thread Group’lar için bir Header Manager bulunmalıdır. Bazı nedenlerden dolayı testinizdeki farklı HTTP Request nesneleri için farklı header’lar belirtmek istemiyorsanız HTTP Header Manager’ınızı Thread Group düzeyinde eklemelisiniz. Bu şekilde eklemiş olduğunuz HTTP Header Manager bütün sampler’ınız için geçerli olacaktır. Bir header birden çok Thread Group’a eklenirse, en son eklemiş olduğumuz header kullanılır. Daha iyi açıklamak için eklemiş olduğum görsel üzerinden ilerleyeceğim.

Example-1

Yan taraftaki birinci örnekte HTTP Header Manager’ın Test Plan seviyesinde eklenmiş olduğunu görüyoruz. Buradaki header’larımız Thread Group -1 ve -2'nin kapsamış olduğu bütün sampler(HTTP Request-1, HTTP Request-2, HTTP Request-3) için geçerlidir.

Example-2

İkinci örneğimizde ise HTTP Request sampler’ına eklenmiş olan bir HTTP Header Manager-2 bulunmaktadır. Aynı zamanda daha üst seviyede HTTP Header Manager-1’i Thread Group seviyesinde eklenmiş olduğunu görüyoruz. Testimizi çalıştırdığımız zaman;

  • HTTP Request-1’in içindeki HTTP Header Manager-2 kullanılacaktır.
  • HTTP Request-2 için Thread Group-1 seviyesinde eklenmiş olan HTTP Header Manager-1’i kullanacaktır.
  • HTTP Request-3 için herhangi bir header kullanılmayacaktır.
Example-3

Üçüncü örneğimizde ise eklemiş olduğumuz header’ımız Test Plan seviyesindedir. Thread Group-1'in içindeki HTTP Request-1 için HTTP Header Manager-2 eklendiğini görüyoruz. Testimiz çalıştığı zaman;

  • HTTP Request-1 için HTTP Header Manager-2 kullanılacaktır.
  • HTTP Request-2 için HTTP Header Manager-1 kullanılacaktır.
  • HTTP Request-3 için HTTP Header Manager-1 kullanılacaktır.
Example-4

Dördüncü örneğimizi biraz kompleks tutmaya çalıştım ki karşınıza daha komplekike bir yapı çıktığında daha rahat analiz yapabilin.Test Plan seviyesinde, Thread Group seviyesinde ve Sampler’lar seviyesinde header’larımızın eklenmiş olduğunu görüyoruz. Testimiz çalıştığı zaman;

  • HTTP Request-1 için alt tabakaya eklenmiş olan HTTP Header Manager-3 kullanacaktır.
  • HTTP Request-2 için Thread Group-1'e eklenmiş olan HTTP Header Manager-2 kullanılacaktır. Test Plan seviyesinde eklenmiş olan header kullanılmayacaktır.
  • HTTP Request-3 için Test Plan seviyesinde eklenmiş olan HTTP Header Manager-1 kullanılacaktır.

Evet arkadaşlar, bu serimizi bitirdik fakat bu seri başlığı altında HTTP Cookie Manager ve HTTP Basic Authentication konularına değineceğim. Fakat bu konulara değinmeden önce mantığını anlamanız için HTTP Request Manager ile başlamak istedim. Yorumlarınız benim için çok önemli, diğer serimde görüşmek üzere kendinize iyi bakın.

--

--