Ana içeriğe atla

Apache JMeter İle Web Uygulamalarını Test Etmek

Apache JMeter bir web uygulamasının üzerinde değişik türden yükler oluşturarak uygulamanızı test etmenize imkan sağlayan bir araçtır.
Seyfettin Kahveci
Seyfettin Kahveci
10 dakika okuma süresi
apache-jmeter-ile-web-uygulamalarini-test-etmek

JMeter’ın Desteklediği Protokoller

  • HTTP, HTTPS web uygulamaları
  • SOAP (Web servisleri)
  • JDBC üzerinden veritabanı sürücüleri
  • LDAP
  • JMS
  • POP3, IMAP, SMTP
  • FTP

JMeter’ın Özellikleri

  • Açık kaynak kodludur.
  • Java kullanarak Swing GUI (Graphical User Interface) framework ile geliştirilmiştir.
  • Yazılmış başka Swing bileşenleri Jmeter’a entegre edilebilir.
  • JMeter test planlarını XML formatında kaydeder ve yeniden kullanılabilmesini sağlar.
  • Multi-thread çalışabilen bir uygulamadır.
  • Birçok performans testini ve load test yapabilmeyi sağlar.

Web sitelerinin gerçek kullanıcılar ile etkileşime geçmeden önce istenilen performans değerlerine ulaşıp ulaşmadığını tespit etmek ve kullanılabilirlik sınırlarını belirlemek için yapılan birtakım testler; fonksiyonel test, yük testi, stres testi ve performans testi olarak adlandırılır. JMeter ile bu testleri uygulayarak ve raporlar alarak web uygulamanızın performansını ölçmek mümkündür.

JMeter ile simüle edilen kullanıcı senaryoları, web uygulaması tarafından istenen girdiler farklılaştırılıp kurgulanarak sistemde istenen büyüklükte yük oluşturulabilir.

JMeter uygulamayı sanal kullanıcı gibi kullanarak test eder. Sanal kullanıcı olarak gözükmek için de HTTP protokolünü kullanır. JMeter’a verilen test planı, hangi sayfanın ne zaman ve hangi bilgiyle çağırıldığını belirler. Bu bilgiler doğrultusunda test planı işleme konulduğu takdirde JMeter HTTP protokolü ile uygulamaya bağlanarak istenilen veriler ile web sayfalarınızı gezmeye başlayacaktır.

Gerçeğe yakınlık için birden fazla farklı test senaryoları ile uygulama test edilerek, http yanıt süreleri, kullanılan kaynakların artış-iniş miktarı, memory leak izlenimi gibi elde edilen test sonuçlarıyla ile raporlar analiz edilir.

Örnek Bir Ana Sayfa Testi

JMeter açıldıktan sonra “Test Plan”  sayfasından adını örneğimize uygun olarak değiştiriyoruz. Biz örneğimizde drupart.com.tr’nin ana sayfasını test edeceğimiz için adını “Drupart Test Planı” olarak değiştirdik.

Drupart Test Planı”nı sağ tıklayarak  Add->Threads (Users)->Thread Group ‘u seçiyoruz.

Thread Group” sekmesinde kullanıcısı sayısını, test saniye aralığını, tekrarlama sayısını ve örnekleyici hatası ile karşılaşıldığında alınacak kararı ayarlıyoruz.

Thread Group”üzerine sağ tıklayarak Add->Config Element->HTTP Request Default ‘u seçiyoruz.

HTTP Request Default” istek yapılacak tüm sayfalarda aynı ayarları kullanmak için eklenen bir elementtir. Server name ve protokol alanlarını senaryomuza göre dolduruyoruz.

Thread Group”u sağ tıklayarak Add->Sampler->HTTP Request‘i seçiyoruz.

HTTP Request” sayfaya istek yapmak için kullanılan elementtir. “HTTP Request Default” elementinde “Server Name or IP” alanına default olarak drupart.com.tr atadığımız için bu alanı boş bırakabiliriz.

İstek yapılacak sayfada veri post etmeyeceğimiz için Basic sekmesinde yer alan “Method” GET olarak ayarlanır. İstek yapılacak sayfa anasayfa olduğundan “Path” alanı  / olarak girilir. Advanced sekmesinden ise Retrieve All Embedded Resources seçili hale getirilir. 

Thread Group”u sağ tıklayarak Add->Listener->View Results Tree‘i seçiyoruz.

View Results Tree” test sonuçlarını takip ederek kayıt altına alabileceğimiz en çok kullanılan sonuç ekranlarından bir tanesidir. Bu alan altında bulunan “Sampler Result” ile istek süresi, hata sayısı ve birçok istek sayfası ile alakalı test sonuçlarını döndürmektedir. “Request” gönderilen istek bilgilerini döndürür. “Response Data” istek sonucu dönen sayfanın kaynak kodunu seçim  tipine göre görmemizi sağlayacak alandır. “Filename” alanına kayıt altına alınacak dosya adını girebilir ve “Configure” ile kayıt altına alınacak field’ları belirleyebiliriz.

Sunucudan dönecek cevabın nasıl olmasını istiyorsak ona göre ilgili sample ve format seçilir.

Thread Group”u sağ tıklayarak Add->Listener->View Results in Table‘ı seçiyoruz.

Start butonu ile çalıştırılıp, sonuçlarımızı tablo halinde görerek aynı zamanda kayıt altına alabiliriz. “Filename” alanına kayıt altına alınacak dosya adını girebilir ve “Configure” ile kayıt altına alınacak field’ları belirleyebiliriz.

 

Ofislerimiz

Drupart Locations

Ofislerimiz

Drupart AR-GE

GOSB Teknopark Hi-Tech Bina 3.Kat B3 Gebze - KOCAELİ

+90 262 678 8872

+90 216 706 12 58 

[email protected]

Londra

151 West Green Road, London, England

+44 203 815 6478

[email protected]

Newark

112 Capitol Trail Suite, A437 Newark DE, 19711

+1 (740) 666 6255

[email protected]

Wiesbaden

Hinterbergstraße 27
65207 Wiesbaden
Deutschland

+49 (0) 6151 – 492 70 23

[email protected]