LoadRunner Test Aracı – Bileşenler ve Archidoku
LoadRunner nedir?
LoadRunner öncülüğünü yaptığı bir Performans Test aracıdır. Mercury 1999 yılında LoadRunner, 2006 yılında HPE tarafından satın alındı. 2016 yılında ise LoadRunner, MicroFocus tarafından satın alındı.
LoadRunner çeşitli geliştirme araçlarını, teknolojileri ve iletişim protokollerini destekler. Aslında bu kadar çok sayıda protokolün yürütülmesini destekleyen piyasadaki tek araçtır. Performans testi. LoadRunner yazılımı tarafından üretilen Performans Testi Sonuçları, diğer araçlara karşı bir kıyaslama olarak kullanılır
LoadRunner Videosu
Neden LoadRunner?
LoadRunner Performans Testinde öncü bir araç olmasının yanı sıra Performans Testi paradigmasında da hâlâ pazar lideridir. Yakın zamanda yapılan bir değerlendirmeye göre LoadRunner, Performans Testi sektöründe yaklaşık %85 pazar payına sahiptir.
LoadRunner aracı genel olarak RIA (Zengin İnternet Uygulamaları), Web 2.0 (HTTP/HTML, Ajax, Flex ve Silverlight vb.), Mobil, SAP, Oracle, MS SQL Sunucu, Citrix, RTE, Mail ve her şeyden önce, Windows Priz. Piyasada bu kadar geniş protokol çeşitliliğini tek bir araçta sunabilen rakip bir araç yok.
Yazılım testinde LoadRunner'ı seçmenin daha ikna edici yanı, bu aracın güvenilirliğidir. LoadRunner aracı, sık sık bulabileceğiniz bir üne sahiptir. istemciler LoadRunner'ı kullanarak performans ölçütlerinizi doğruluyor. Performans testi ihtiyaçlarınız için zaten LoadRunner'ı kullanıyorsanız rahatlama bulacaksınız.
LoadRunner yazılımı, Birleşik İşlevsel Test (QTP) ve ALM (Uygulama Yaşam Döngüsü Yönetimi) gibi diğer HP Araçlarıyla sıkı bir şekilde entegre olup uçtan uca Test Süreçlerinizi gerçekleştirmenize olanak tanır.
LoadRunner, söz konusu uygulamadaki Sanal Kullanıcıları simüle etme prensibi üzerinde çalışır. VUser'lar olarak da adlandırılan bu Sanal Kullanıcılar, müşterinin isteklerini çoğaltır ve bir işlemin iletilmesine karşılık gelen bir yanıt bekler.
Neden Performans Testine ihtiyacınız var?
Tahminen 4.4 milyar gelir kaybı zayıf web performansı nedeniyle yıllık olarak kaydedilmektedir.
Günümüzün Web 2.0 çağında, bir web sitesi 8 saniye içinde yanıt vermezse kullanıcılar başka bir yere tıklar. Google'da arama yaparken veya Facebook'ta arkadaşlık isteği gönderirken 5 saniye beklediğinizi hayal edin. Performans kesintisinin sonuçları genellikle hayal edilenden daha yıkıcıdır. Yakın zamanda Bank of America Online Banking'i etkileyen örneklere sahibiz, Amazon Web Hizmetleri, Intuit veya Blackberry.
Dunn & Bradstreet'e göre Fortune 59 şirketlerinin %500'u her hafta tahmini 1.6 saat kesinti yaşıyor. En az 500 çalışanı olan ortalama Fortune 10,000 şirketinin saat başına 56 dolar ödediği göz önüne alındığında, böyle bir kuruluş için kesinti maliyetlerinin işçilik kısmı haftalık 896,000 dolardır, bu da yılda 46 milyon dolardan fazla bir rakama karşılık gelir.
Google.com'un yalnızca 5 dakikalık bir kesintisinin (19-Ağu-13) arama devine 545,000 dolara mal olacağı tahmin ediliyor.
Yakın zamanda meydana gelen bir olay nedeniyle şirketlerin saniyede 1100 dolar değerinde satış kaybettiği tahmin ediliyor. Amazon Web Hizmeti Kesintisi.
Bir yazılım sistemi bir kuruluş tarafından dağıtıldığında performans gecikmesine yol açabilecek birçok senaryoyla karşılaşabilir. Bir dizi faktör performansın düşmesine neden olur; birkaç örnek şunları içerebilir:
- Veritabanında bulunan kayıtların sayısı arttı
- Sisteme yapılan eş zamanlı talep sayısı artırıldı
- geçmişe kıyasla sisteme aynı anda daha fazla sayıda kullanıcı erişiyor
LoadRunner Nedir? Archidoku?
HP LoadRunner'ın mimarisi genel hatlarıyla karmaşıktır, ancak anlaşılması kolaydır.

Performansını kontrol etmekle görevlendirildiğinizi varsayalım. Amazon5000 kullanıcı için .com
Gerçek hayatta bu 5000 kullanıcının tamamı ana sayfada değil, web sitelerinin farklı bir bölümünde olacaktır. Daha farklı nasıl simüle edebiliriz?
VUGen
VUGen veya Sanal Kullanıcı Generator bir IDE (Entegre Geliştirme Ortamı) veya zengin bir kodlama düzenleyicisidir. VUGen, Yük Altındaki Sistem (SUL) davranışını kopyalamak için kullanılır. VUGen, istemci ve Sunucu arasındaki iletişimi, VUser komut dosyası olarak da adlandırılan kodlanmış bir komut dosyası biçiminde kaydeden bir "kayıt" özelliği sağlar.
Yukarıdaki örneği göz önünde bulundurarak, VUGen aşağıdaki iş süreçlerini simüle etmek için kayıt yapabilir:
- Ürünler Sayfasında Gezinme Amazon.com
- Sepet
- Odeme yapiliyor
- Hesabım Sayfası Kontrol Ediliyor
kontrolör
Bir VUser betiği sonlandırıldığında, Controller, aşağıdakileri yöneterek Yük simülasyonunu kontrol eden ana LoadRunner bileşenlerinden biridir:
- Her iş sürecine veya VUser Grubuna göre kaç VUser'ın simüle edileceği
- VUsers'ın davranışları (artış, azalış, eş zamanlı veya eşzamanlı olma vb.)
- Yükün Doğası senaryosu, örneğin Gerçek Hayat veya Hedef Odaklı veya SLA'yı doğrulayan
- Hangi enjektörlerin kullanılacağı, her enjektöre karşı kaç adet VUser'ın kullanılacağı
- Sonuçları periyodik olarak harmanlayın
- IP Spoofing
- Hata bildirimi
- İşlem raporlama vb.
Örnek denetleyicimizden bir benzetme alırsak VUGen Script'e aşağıdaki parametreyi ekleyeceğiz
1) 3500 Kullanıcı Ürünler Sayfasında Gezinme Amazon.com
2) 750 Kullanıcı var Sepet
3) 500 Kullanıcı Ödeme İşleminin gerçekleştirilmesi
4) 250 Kullanıcı SADECE 500 kullanıcı Ödeme İşlemini tamamladıktan sonra Hesabım Sayfasını kontrol etme
Daha da karmaşık senaryolar mümkün
- 5 VUser'lık bir yüke kadar her 2 saniyede bir 3500 VUser başlatın (sörf Amazon ürün sayfası) elde edilir.
- 30 dakika boyunca tekrarlayın
- 25 VUser için yinelemeyi askıya alın
- 20 VUSer'ı yeniden başlatın
- Her saniye 2 kullanıcıyı (Ödeme, Ödeme İşlemleri, Hesaplarım Sayfasında) başlatın.
- Makine A'da 2500 VUser oluşturulacak
- Makine B'de 2500 VUser oluşturulacak
Ajanlar Makine/Yük Generators/Enjektörler
HP LoadRunner Denetleyici binlerce VUser'ı simüle etmekten sorumludur; bu VUser'lar işlemci ve bellek gibi donanım kaynaklarını tüketir ve dolayısıyla onları simüle eden makineye bir sınır koyar. Ayrıca, Denetleyici bu VUser'ları aynı makineden (Denetleyicinin bulunduğu yer) simüle eder ve bu nedenle sonuçlar kesin olmayabilir. Bu endişeyi gidermek için tüm VUser'lar çeşitli makinelere dağılmıştır. Yük Generators veya Enjektörleri Yükle.
Genel bir uygulama olarak, Kontrolör farklı bir makinede bulunur ve yük diğer makinelerden simüle edilir. VUser komut dosyalarının protokolüne ve makine spesifikasyonlarına bağlı olarak, tam simülasyon için bir dizi Yük Enjektörü gerekebilir. Örneğin, bir HTTP komut dosyasına yönelik VUser'lar, simülasyon için VUser başına 2-4 MB gerektirecektir, dolayısıyla 4 VUser yükünü simüle etmek için her biri 4 GB RAM'e sahip 10,000 makine gerekecektir.
Analojimizi bizden almak Amazon Örnek olarak bu bileşenin çıktısı şöyle olacaktır:
Analiz
Yükleme senaryoları yürütüldükten sonra “ rolüAnalizLoadRunner'ın bileşenleri devreye giriyor.
Yürütme sırasında, Denetleyici ham biçimde bir sonuç dökümü oluşturur ve bu sonuç dökümünü hangi LoadRunner sürümünün oluşturduğu ve yapılandırmaların neler olduğu gibi bilgileri içerir.
Tüm hatalar ve istisnalar bir dosyaya kaydedilir. Microsoft çıktı.mdb adlı veritabanına erişim. “Analiz” bileşeni, çeşitli analiz türlerini gerçekleştirmek için bu veritabanı dosyasını okur ve grafikler oluşturur.
Bu grafikler, yük altında hataların ve arızaların ardındaki mantığı anlamak için çeşitli eğilimleri göstermektedir; böylece SUL, Sunucu (örn. JBoss, Oracle) veya altyapı.
Aşağıda bant genişliğinin darboğaz oluşturabileceği bir örnek verilmiştir. Diyelim ki Web sunucusu 1GBps kapasiteye sahipken, veri trafiği bu kapasiteyi aşıyor ve bu da sonraki kullanıcıların mağdur olmasına neden oluyor. Sistemin bu tür ihtiyaçları karşıladığını belirlemek için Performans Mühendisinin anormal yükle uygulama davranışını analiz etmesi gerekir. Aşağıda LoadRunner'ın bant genişliğini ortaya çıkarmak için oluşturduğu bir grafik bulunmaktadır.
Performans Testi Nasıl Yapılır?
Performans Testi Yol Haritası genel olarak 5 adıma ayrılabilir:
- Yük Testi Planlaması
- VUGen Komut Dosyaları Oluşturun
- Senaryo Oluşturma
- Senaryo Uygulaması
- Sonuç Analizi (ardından sistem ayarlamaları yapılır)
Artık LoadRunner'ı kurduğunuza göre, süreçteki adımları tek tek anlayalım.
Performans Testi sürecine dahil olan adımlar
Adım 1) Yük Testinin Planlanması
Performans Testinin Planlanması, bir testin planlanmasından farklıdır. SIT (Sistem Entegrasyon Testi) or UAT (Kullanıcı Kabul Testi). Planlama ayrıca aşağıda açıklandığı gibi küçük aşamalara ayrılabilir:
Takımınızı Kurun
LoadRunner Testine başlarken, süreçte yer alan her ekipten kimlerin etkinliğe katılacağını belgelemek en iyisidir.
Proje Müdürü:
Bu aktivitenin sahibi olacak ve üst kademeye iletmede sorumlu kişi olarak görev yapacak proje yöneticisini aday gösterin.
Fonksiyon Uzmanı/İş Analisti:
SUL'un Kullanım Analizini sağlayın ve web sitesinin/SUL'un iş işlevselliği konusunda uzmanlık sağlayın
Performans Testi Uzmanı:
Otomatik performans testleri oluşturur ve yükleme senaryolarını yürütür
sistem Archi:
SUL'un planını sağlar
Web Geliştiricisi ve KOBİ:
- Web sitesinin bakımını yapar ve izleme özelliklerini sağlar
- Web sitesini geliştirir ve hataları düzeltir
Sistem yöneticisi:
- Bir test projesi boyunca ilgili sunucuların bakımını yapar
Anahat uygulamaları ve ilgili İş Süreçleri:
Başarılı Yük Testi belirli bir iş sürecini yürütmeyi planlamanızı gerektirir. Bir İş Süreci, yük testi hedeflerinizi gerçekleştirmek için istenen ticari işlemlere uygun, açıkça tanımlanmış adımlardan oluşur.
Sistemdeki kullanıcı yükünü ortaya çıkarmak için bir gereksinim metriği hazırlanabilir. Aşağıda bir şirketteki devam sisteminin bir örneği verilmiştir:
Yukarıdaki örnekte rakamlar, belirli bir saatte uygulamaya (SUL) bağlanan kullanıcı sayısını belirtmektedir. En sağdaki sütunlarda hesaplanan, günün herhangi bir saatinde bir iş sürecine bağlı maksimum kullanıcı sayısını çıkarabiliriz.
Benzer şekilde günün herhangi bir saatinde uygulamaya (SUL) bağlanan toplam kullanıcı sayısını da çıkarabiliriz. Bu son satırda hesaplanır.
Yukarıdaki 2 gerçeğin birleşimi bize sistemi performans açısından test etmemiz gereken toplam kullanıcı sayısını verir.
Test Veri Yönetimi Prosedürlerini Tanımlayın
Performans Testinden elde edilen istatistikler ve gözlemler, daha önce belirtildiği gibi çok sayıda faktörden büyük ölçüde etkilenir. Performans Testi için Test Verilerinin hazırlanması kritik öneme sahiptir. Bazen belirli bir iş süreci bir veri kümesini tüketir ve farklı bir veri kümesi üretir. Aşağıdaki örneği alın:
- 'A' kullanıcısı bir mali sözleşme oluşturur ve bunu incelemeye gönderir.
- Başka bir 'B' kullanıcısı, 'A' kullanıcısı tarafından oluşturulan günde 200 sözleşmeyi onaylıyor
- Başka bir 'C' kullanıcısı, 'B' kullanıcısı tarafından onaylanan günde yaklaşık 150 sözleşme ödüyor
Bu durumda B Kullanıcısının sistemde 200 sözleşme 'oluşturulmuş' olması gerekir. Ayrıca C kullanıcısının 150 kullanıcı yükünü simüle edebilmesi için 150 sözleşmenin “onaylanmış” olması gerekiyor.
Bu dolaylı olarak en az 200+150= 350 sözleşme oluşturmanız gerektiği anlamına gelir.
Bundan sonra, C Kullanıcısı için Test verisi olarak hizmet verecek 150 sözleşmeyi onaylayın; geri kalan 200 sözleşme B Kullanıcısı için Test Verisi olarak görev yapacak.
Anahat Monitörleri
Bir sistemin performansını etkileyebilecek her bir faktörü tahmin edin. Örneğin, donanımın azaltılmasının SUL (Yük Altındaki Sistem) performansı üzerinde potansiyel etkisi olacaktır.
Tüm faktörleri listeleyin ve ölçebilmeniz için monitörler kurun. İşte birkaç örnek:
- İşlemci (Web Sunucusu, Uygulama Sunucusu, Veritabanı Sunucusu ve Enjektörler için)
- RAM (Web Sunucusu, Uygulama Sunucusu, Veritabanı Sunucusu ve Enjektörler için)
- Web/Uygulama Sunucusu (örneğin IIS, JBoss, Jaguar Sunucusu, Tomcat vb.)
- DB Sunucusu (PGA ve SGA boyutunda Oracle ve MSSQL Sunucusu, SP'ler vb.)
- Ağ bant genişliği kullanımı
- Kümeleme durumunda Dahili ve Harici NIC
- Yük Dengeleyici (ve yükü kümelerin tüm düğümlerine eşit olarak dağıtıyor)
- Veri akışı (istemci ve sunucuya ne kadar veri taşındığını hesaplayın - ardından NIC kapasitesinin X sayıda kullanıcıyı simüle etmek için yeterli olup olmadığını hesaplayın)
Adım 2) VUGen Komut Dosyaları Oluşturun
Planlamadan sonraki adım yaratmaktır VUser komut dosyaları.
Adım 3) Senaryo Oluşturma
Sonraki adım Yük Senaryonuzu oluşturmaktır
Adım 4) Senaryonun Uygulanması
Senaryo yürütme, birden fazla VUser'a aynı anda görevler gerçekleştirme talimatı vererek sunucudaki kullanıcı yükünü taklit ettiğiniz yerdir.
Aynı anda görevleri gerçekleştiren VUser sayısını artırarak veya azaltarak yükün seviyesini ayarlayabilirsiniz.
Bu yürütme, sunucunun strese girmesine ve anormal davranmasına neden olabilir. Performans Testinin amacı da budur. Elde edilen sonuçlar daha sonra ayrıntılı analiz ve temel nedenin belirlenmesi için kullanılır.
Adım 5) Sonuç Analizi (ardından sistem ayarlamaları yapılır)
Senaryo yürütme sırasında, LoadRunner uygulamanın farklı yükler altındaki performansını kaydeder. Test yürütmesinden alınan istatistikler kaydedilir ve ayrıntılı analiz gerçekleştirilir. 'HP Analizi' aracı, sistem performansındaki bir gecikmenin ve bir sistem arızasının ardındaki temel nedenleri belirlemeye yardımcı olan çeşitli grafikler üretir.
Elde edilen grafiklerden bazıları şunlardır:
- İlk tampona kadar geçen süre
- İşlem Yanıt Süresi
- Ortalama İşlem Yanıt Süresi
- Saniyedeki İsabet Sayısı
- Windows Kaynaklar
- Hata İstatistikleri
- İşlem Özeti