Kontrolery w JMeter: Pętla, Prosta, Transakcja, Moduł, Losowa
Co to jest kontroler logiczny?
Kontrolery logiczne pozwalają zdefiniować kolejność przetwarzania żądań w wątku. Pozwala kontrolować, „kiedy” wysłać żądanie użytkownika do serwera WWW. Można na przykład użyć kontrolerów losowych do losowego wysyłania żądań HTTP do serwera
Kontrolery logiczne określają zamówienie w którym realizowane jest żądanie użytkownika.
Poniżej znajdują się niektóre powszechnie używane sterowniki logiczne:
Kontroler nagrywania
JMeter mogą rekord Twój Testowanie kroki; kontroler nagrywania to a zastępczy aby zapisać te kroki nagrywania.
Prosty kontroler
Prosty kontroler to po prostu pojemnik na żądanie użytkownika.
Kontroler pętli
Loop Controller uruchamia żądanie użytkownika określoną liczbę razy lub biegać na zawsze jak pokazano na rysunku:
Losowy kontroler
Random Controller powoduje uruchomienie wszystkich żądań użytkowników losowy kolejność w każdym okresie pętli.
Na przykład masz 3 żądania użytkowników do witryny internetowej http://www.google.com w następującej kolejności:
- Żądanie HTTP
- Żądanie FTP
- Żądanie JDBC
Te 3 żądania powinny zostać uruchomione 5 razy. Łącznie 15 żądań użytkowników zostanie wysłanych na serwer Google do dnia JMeter.
In ciągły zamówienie, żądania są wysyłane sekwencyjnie w następującej kolejności:
Żądanie HTTP -> Żądanie FTP -> Żądanie JDBC
dla każdej pętli.
In przypadkowy zamówienie, żądania są wysyłane jako losowo,
Żądanie FTP -> Żądanie HTTP -> Żądanie JDBC
Or
Żądanie JDBC -> Żądanie FTP-> Żądanie HTTP
Dla każdej pętli.
Kontroler modułu
Celem modułu kontrolera jest dodanie modułowości JMeter.
Ogólna koncepcja jest taka, że aplikacje internetowe składają się z małych jednostek funkcjonalności (np. logowanie, tworzenie konta, wylogowywanie…). Ta funkcjonalność może być przechowywana w Prosty kontroler jako „moduły”. Kontroler modułu wybierze, który moduł ma działać.
Rozważ następujący scenariusz –
Chcesz symulować:
- użytkownicy 50 wylogowuję się,
- użytkownicy 100 Logowanie
- użytkownicy 30 szukanie www.google.com
Możesz użyć JMeter aby utworzyć 3 moduły. Każdy moduł symuluje każdą aktywność użytkownika: logowanie, wylogowanie i wyszukiwanie.
Kontroler modułu wybiera, który moduł ma działać.
Inne ważne kontrolery
- Przekładać Kontroler: podnosi i robi pierwszej uruchomionego żądania użytkownika każdy pętla wątku.
- Czas pracy Kontroler: kontrola jak długo jego dzieci mogą biegać.
Na przykład, jeśli określono Runtime Controller 10 sekund, JMeter uruchomi Twój test na 10 sekund.
- Transakcja Kontroler: mierzy całkowity czas zabrany do koniec wykonanie testowe
- Zawierać Kontroler: jest przeznaczony do korzystania z zewnętrznego planu testów. Ten kontroler umożliwia korzystanie z wielu planów testów w JMeter. Zobacz szczegóły w JMeter Test wydajności.
Przykład kontrolera pętli
W tej sekcji znajdują się instrukcje krok po kroku dotyczące dodawania Kontroler pętli ustawiony na bieżący plan testów wydajności.
Kontroler pętli powoduje, że próbniki uruchamiają się określoną liczbę razy, oprócz wartości pętli określonej dla grupy wątków. Na przykład, jeśli ty
- Dodaj jedno żądanie HTTP do kontrolera pętli z liczbą pętli 50
- Skonfiguruj liczbę pętli grupy wątków na 2
- Następnie, JMeter wyśle w sumie 50 * 2 = 100 żądań HTTP.
To jest mapa drogowa tego przykładu:
Krok 1) Konfiguracja grupy wątków
We ponowne użycie Krok 1, 2 w samouczku JMeter Test wydajności.
-
Dodaj grupę wątków
Kliknij prawym przyciskiem myszy na Plan testów i dodaj nową grupę wątków: Dodaj-> Wątki (Użytkownicy) ->Grupa wątków
Ale w panelu sterowania grupy wątków wprowadź Właściwości wątku w następujący sposób:
Uczyni to pierwszej żądanie użytkownika do serwera internetowego google.com i uruchom je 2 razy.
-
Dodaj JMeter Elementy
Dodaj domyślne żądanie HTTP do www.google.com.
-
Dodawanie kontrolera pętli
Kliknij prawym przyciskiem myszy grupę wątków -> kontroler logiczny -> kontroler pętli
Krok 2) Konfiguracja kontrolera pętli
Dodaj wartość 50 do pola Liczba pętli, jak pokazano na poniższym rysunku. Uczyni to pierwszej żądanie użytkownika do serwera WWW google.com Uruchom 50 razy, oprócz wartości pętli =2 określonej dla powyższej grupy wątków.So JMeter wyśle w sumie 2 * 50 = 100 Żądania HTTP.
Kliknij prawym przyciskiem myszy Kontroler pętli, Dodaj -> Próbnik -> Żądanie HTTP
Krok 3) Dodaj Wyświetl wyniki w tabeli
Ponownie używamy kroku 2 w Regulator czasowy aby dodać Wyświetl wyniki w tabeli
Zatem plan testów pokazano na poniższym rysunku
Krok 4) Uruchom test
Teraz wróć do Wyświetl wyniki w tabeli i kliknij przycisk Start na pasku menu (Ctrl+R), aby uruchomić test
Jak pokazano na poniższym rysunku, JMeter symuluje jedno żądanie użytkownika, który jest wysyłany 100 razy do serwera WWW http://www.google.com/. Test zostaje zatrzymany po 100-krotnym wysłaniu żądania użytkownika.
Rozwiązywanie problemów
- Jeśli napotkasz problem podczas realizacji powyższego scenariusza, wykonaj następujące czynności
- Sprawdź, czy łączysz się z Internetem za pośrednictwem serwera proxy. Jeśli tak, usuń serwer proxy.
- Otwórz nową instancję Jmeter
- Otwórz ControllerTestPlan.jmx w Jmeter
- Kliknij Grupa wątków -> Wyświetl wynik w tabeli
- Uruchom test