Testy wydajnościowe aplikacji webowych i usług z wykorzystaniem Apache JMeter

Tworzenie skryptów i przeprowadzanie testów
    Czas trwania
    Godzina rozpoczęcia
    Stopień trudności

      Testy wydajnościowe aplikacji webowych i usług z wykorzystaniem Apache JMeter


      Szkolenie w wersji zdalnej i stacjonarnej.

      Opis szkolenia

      JMeter jest jednym z najczęściej wykorzystywanych narzędzi do testów wydajnościowych aplikacji webowych. Jest to zaawansowane narzędzie do testów różnego rodzaju serwisów (m. in. HTTP, FTP, JDBC, LDAP, SMTP, POP3, IMAP, SOAP/REST) pod względem wydajności i poprawności zwracanych wyników. Poza wykorzystaniem w testach wydajnościowych może być z powodzeniem wykorzystane również przy automatyzacji testów regresji. 

      Zalety:

      • Narzędzie jest bezpłatne, dostępne na licencji Apache.
      • Dzięki możliwości rozdzielenia testów na wiele maszyn, podczas działania w trybie Distributed Testing, pozwala na symulowanie dowolnej liczby użytkowników.
      • Korzystanie z narzędzia nie wymaga umiejętności programowania, dzięki czemu narzędzie może być z powodzeniem wykorzystywane przez wszystkich testerów. 

      Poznaj program szkolenia

      Co zyskasz dzięki szkoleniu ?

      Cele szkolenia

      Celem szkolenia jest wprowadzenie uczestnika w tematykę testów wydajnościowych i ich wykonywania z wykorzystaniem narzędzia JMeter. Podczas szkolenia uczestnicy poznają narzędzie JMeter oraz nauczą się samodzielnie przygotowywać skrypty testowe, zarówno do testów aplikacji webowych jak i API. Podczas szkolenia uczestnicy będą wspólnie z prowadzącą przygotowywali skrypt do testów rzeczywistej aplikacji webowej i usługi.

      Umiejętności

      Dzięki szkoleniu uczestnik będzie:

      • Przygotowywał skrypty do testów wydajnościowych dla aplikacji webowej i usługi (REST, SOAP).
      • Dostosowywał parametry skryptu wydajnościowego do specyfiki systemu.
      • Wykonywał testy wydajnościowe i potrafil zinterpretować ich wyniki oraz wskazać problemy wydajnościowe systemu.
      • Przygotowywał czytelny raport z wynikami testów. 
      • Wykonywał testy w trybie GUI oraz z linii poleceń.
      • Wykonywał testy z wielu maszyn w trybie testowania rozproszonego (Distributed Testing).
      • Potrafił przechwytywać żądania HTTP z wykorzystaniem narzędzia typu lokalnego proxy. 
      • Parametryzował skrypty z wykorzystaniem wyrażeń regularnych.
      • Wykorzystywał popularne rozszerzenia do narzędzia JMeter.
      Czy to szkolenie jest dla Ciebie ?

      Profil uczestników

      • Szkolenie jest skierowane dla testerów zaczynających przygodę z testami wydajności z wykorzystaniem narzędzia JMeter.
      • Uczestniczenie w szkoleniu wymaga podstawowej wiedzy z obszaru testów aplikacji webowych.

      Przygotowanie uczestników

      Instalacja Javy i narzędzia JMeter oraz aplikacji testowych. Aplikacje testowe wymagają instalacji Dockera.

      Czas trwania

      Przed nami:

      • 2 dni, 14 godzin szkoleniowych
      Szczegółowy program szkolenia

      Szczegółowy program szkolenia

      1.       Wprowadzenie

      2.       Podstawy testów wydajnościowych

      3.       Rodzaje testów wydajnościowych m. in.

      • Baseline Test
      • Load Test
      • Soak Test
      • Stress Test
      • Volume Test

      4.       Strategie testowania wydajności

      5.       Podział testów ze względu na cel testu

      6.       Analiza wymagań pod kątem wydajności

      7.       Podstawy komunikacji HTTP

      8.       Wprowadzenie do JMetera i podstawy korzystania z narzędzia

      9.       Podstawowe elementy tworzące plan testów m. in:

      • Test Plan
      • Thread Group
      • Sampler
      • Listener
      • Timer
      • Assertion

      10.   Przygotowanie środowiska do testów wydajnościowych (zasilenie środowiska przed i w trakcie testów, import lub pobranie danych testowych)

      • JDBC Sampler

      11.   Modelowanie zachowania użytkowników poprzez kontrolery i niestandardowe grupy wątków

      • Plugin Ultimate Thread Group i zmienna liczba wątków/wirtualnych użytkowników w trakcie testu
      • Modelowanie zachowań użytkowników
      • Kontrolery - instrukcje warunkowe na przykładzie:
        • While Controller
        • If Controller
        • Once Only Controller
        • For Each Controller
      • Inne ważne kontrolery
        •  Module Controller i Test Fragment - wielokrotne wykorzystanie fragmentów skryptu
        • Throughput Controller i Weighted Switch Controller - zarządzanie ruchem

      12.   Parametryzacja na przykładzie zmiennych dynamicznych np. tokeny anty-CSRF - wykorzystanie RegEx (Regular Expression) Extractor 

      13.   Skrypty (Groovy/BeanShell/JavaScript/Python)

      • Jak pisać skrypty nie tylko w groovy, czyli konfiguracja skryptów python

      14.   Uruchamianie testów z wiersza poleceń i generowanie raportu HTML

      15.   APDEX (Application Performance Index) i jego konfiguracja w JMeterze

      16.   Dodatkowe pluginy - Plugin Manager

      • Testy usług REST
      • REST i JWT
      • REST i OAuth
      • Authorization Manager

      17.   Testy usług Soap

      • Przygotowanie projektu testowego na podstawie pliku WSDL
      • Parametryzacja i przygotowywanie unikalnych danych testowych z wykorzystaniem skryptów groovy
      • Konfiguracja WS-Security
      • "Przeniesienie” skryptów SoapUI do JMetera

      18.   Upload plików - konfiguracja i problemy które mogą się pojawić

      19.   Monitorowanie zużycia zasobów na serwerze podczas trwania testów wydajnościowych na przykładzie pluginu SSHMon

      20.   Testy z wykorzystaniem wielu maszyn (Distributed Testing) - konfiguracja środowiska i problemy które mogą się pojawić

      21.   Debugowanie skryptów (Debug sampler, narzędzia proxy, Dummy Sampler)

      22.   JMeter to nie wszystko - kilka słów o wydajności frontendu i jak ją poprawić (HTTP 2, WebPageTest)


      Metoda realizacji szkolenia

      Zdalnie lub stacjonarnie. Szkolenie prowadzone w formie warsztatowej z ćwiczeniami praktycznymi.

      POBIERZ PROGRAM W PDF

      Ścieżka rozwoju
      • Zachęcamy do zapoznania się z ofertą szkoleń dotyczących testowania.
      W ramach szkolenia zapewniamy

      W ramach szkolenia zapewniamy

      • materiały szkoleniowe
      • certyfikat potwierdzający udział w kursie
      • pełna obsługa cateringowa (dla szkoleń stacjonarnych)

      O trenerze

      Klara Trzcińska

      Specjalistka ds. zapewnienia jakości i bezpieczeństwa oprogramowania z doświadczeniem w testach bezpieczeństwa aplikacji webowych oraz infrastruktury, testach wydajnościowych oraz testach technicznych. Pracuje jako ekspert ds. testów technicznych w Pentacomp Systemy Informatyczne, gdzie nie tylko wykonuje testy, ale także koordynuje pracę zespołu. Wykonywała testy bezpieczeństwa w licznych projektach o dużej skali. Absolwentka Wydziału Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego oraz studiów podyplomowych z zakresu bezpieczeństwa systemów informatycznych na Politechniki Warszawskiej oraz z zakresu audytu systemów informatycznych w Instytucie Podstaw Informatyki Polskiej Akademii Nauk.

          Podobne szkolenia