Co to jest element w JMeter?
Poszczególne komponenty JMeter nazywane są elementami. Każdy element jest przeznaczony do określonego celu.
Poniższy rysunek przedstawia niektóre typowe elementy w JMeter.
Studiowanie wszystkich elementów za jednym razem jest zaproszeniem do zamieszania i nudy. Tutaj omówimy komponenty, które musisz znać, zanim będziesz mógł rozpocząć testowanie w JMeter.
Pozostałe komponenty zostaną omówione tak, jak w przypadku ich użycia w kolejnych samouczkach. Elementy omówione w tym samouczku to
- Grupa wątków
- Próbniki
- Słuchacze
- Konfiguracja
Grupa wątków
Grupy wątków to zbiór wątków. Każdy wątek reprezentuje jednego użytkownika korzystającego z testowanej aplikacji. Zasadniczo każdy wątek symuluje jedno rzeczywiste żądanie użytkownika skierowane do serwera.
Kontrolki dla grupy wątków pozwalają ustawić liczbę wątków dla każdej grupy.
Na przykład, jeśli ustawisz liczbę wątków na 100; JMeter utworzy i zasymuluje 100 żądań użytkowników do testowanego serwera
Próbniki
Jak już wiemy, JMeter obsługuje testowanie protokołów HTTP, FTP, JDBC i wielu innych.
Wiemy już, że grupy wątków symulują żądanie użytkownika skierowane do serwera
Ale skąd grupa wątków wie, jakiego typu żądania (HTTP, FTP itp.) Musi wysyłać?
Odpowiedź brzmi: Samplery
Żądaniem użytkownika może być żądanie FTP, żądanie HTTP, żądanie JDBC… itd.
Żądanie FTP:
Wyobraźmy sobie, że chcesz przetestować wydajność serwera FTP. Do wykonania tego zadania można użyć próbnika żądań FTP w narzędziu JMeter. Ten kontroler umożliwia wysyłanie żądania „pobierania pliku” lub żądania „przesyłania pliku” FTP na serwer FTP.
Na przykład, jeśli chcesz pobrać plik „Test.txt” z testowanego serwera FTP, musisz skonfigurować niektóre parametry w JMeter jak na poniższym rysunku
JMeter wyśle polecenie FTP do serwera FTP ftp.example.com, a następnie pobierze plik Test.txt z tego serwera.
Żądanie HTTP:
Ten próbnik umożliwia wysyłanie żądania HTTP / HTTPS do serwera WWW.
Rozważ poniższy przykład. JMeter wysyła żądanie HTTP do witryny Google i pobiera pliki HTML lub obraz z tej witryny.
W samouczku JMeter Performance Testing wyjaśnimy więcej na temat tego żądania HTTP.
Żądanie JDBC:
Ten sampler umożliwia wykonywanie testów wydajności bazy danych. Wysyła żądanie JDBC (zapytanie SQL) do bazy danych.
Na przykład serwer bazy danych ma pole test_result zapisane w tabeli o nazwie test_tbl. Chcesz zapytać o te dane z serwera bazy danych; można skonfigurować narzędzie JMeter, aby wysyłało zapytanie SQL do tego serwera w celu pobrania danych.
BSF Sampler:
Ten sampler umożliwia napisanie samplera przy użyciu języka skryptowego BSF.
Oto przykład BSF Sampler w JMeter
Access Log Sampler:
Ten sampler umożliwia odczytywanie dzienników dostępu i generowanie żądań HTTP. Dziennik może zawierać obraz, HTML, CSS…
Sampler SMTP:
Jeśli chcesz przetestować serwer pocztowy, możesz użyć próbnika SMTP. Ten próbnik służy do wysyłania wiadomości e-mail przy użyciu protokołu SMTP.
Słuchacze
Słuchacze: pokazuje wyniki wykonania testu. Mogą wyświetlać wyniki w innym formacie, takim jak drzewo, tabela, wykres lub plik dziennika
Odbiorniki wyników wykresu wyświetlają czasy odpowiedzi serwera na wykresie
Zobacz drzewo wyników pokazuje wyniki żądania użytkownika w podstawowym formacie HTML
Tabela Wynik przedstawia podsumowanie wyniku testu w formie tabeli
Dziennik pokazuje podsumowanie wyników testu w pliku tekstowym
Elementy konfiguracji
konfigurować wartości domyślne i zmienne do późniejszego wykorzystania przez samplery.
Poniższy rysunek przedstawia niektóre często używane elementy konfiguracji w narzędziu JMeter
Konfiguracja zbioru danych CSV:
Załóżmy, że chcesz przetestować witrynę internetową dla 100 użytkowników logujących się przy użyciu różnych poświadczeń. Nie musisz nagrywać skryptu 100 razy! Możesz sparametryzować skrypt, aby wprowadzić różne poświadczenia logowania. Te dane logowania (np. Nazwa użytkownika, hasło) mogą być przechowywane w pliku tekstowym. JMeter ma element, który pozwala odczytać różne parametry z tego pliku tekstowego. Jest to „Konfiguracja zbioru danych CSV”, która służy do odczytywania wierszy z pliku i dzielenia ich na zmienne.
To jest przykład danych CSV. Jest to plik tekstowy zawierający użytkownika i hasło umożliwiające zalogowanie się na docelową stronę internetową
Menedżer plików cookie HTTP
Zrozummy to na przykładzie -
Użyłeś przeglądarki (Firefox, IE… itd.) Do przeglądania www.google.com
Logujesz się za pomocą swojego użytkownika i hasła.
Twoja nazwa użytkownika i hasło będą przechowywane na Twoim komputerze jako pliki cookie.
Następnym razem, gdy odwiedzasz www.google.com, nie musisz logować się ponownie, ponieważ Twoja przeglądarka będzie używać plików cookie jako danych użytkownika do logowania.
Menedżer plików cookie HTTP ma również tę samą funkcję co przeglądarka internetowa. Jeśli masz żądanie HTTP, a odpowiedź zawiera plik cookie, menedżer plików cookie automatycznie przechowuje ten plik cookie i wykorzystuje go do wszystkich przyszłych żądań kierowanych do tej konkretnej witryny.
Domyślne żądanie HTTP
Ten element umożliwia ustawienie wartości domyślnych używanych przez kontrolery żądań HTTP.
Na przykład,
Wysyłasz 100 żądań HTTP do serwera google.com
Dla wszystkich tych 100 żądań musiałbyś ręcznie wprowadzić nazwę serwera = google.com
Zamiast tego można dodać pojedyncze domyślne żądanie HTTP z polem „Nazwa serwera lub adres IP” = google.com
Nie musisz wpisywać 100 razy!
Ten element zostanie szczegółowo wyjaśniony w samouczku JMeter Performance Testing
Element konfiguracji logowania
Element konfiguracji logowania umożliwia dodawanie lub nadpisywanie ustawień nazwy użytkownika i hasła w próbnikach.
Na przykład, chcesz zasymulować jedno logowanie użytkownika do witryny www.facebook.com z użytkownikiem i hasłem. Możesz użyć elementu konfiguracji logowania, aby dodać to ustawienie użytkownika i hasła w żądaniu użytkownika
Element konfiguracji logowania a konfiguracja danych CSV
Element konfiguracji logowania |
Konfiguracja danych CSV |
---|---|
Służy do symulacji logowania jednego użytkownika |
Służy do symulacji logowania wielu użytkowników |
Nadaje się tylko do parametrów logowania (użytkownik i hasło) |
Odpowiedni dla dużej liczby parametrów |