Procesor w JMeter: Preprocesor i postprocesor

Procesor służy do modyfikowania Samplerów w ich zakresie.

Istnieją 2 typy procesorów:

  1. Preprocesor
  2. Postprocesor

Preprocesor

Preprocesor wykonuje jakąś akcję zanim składanie wniosku o próbnik.

Rozważmy prosty przykład: powiedzmy, że chciałeś JMeter do „pająka” poprzez testowaną witrynę, analizować link (sprawdź wszystkie linki na stronie) i powrót HTML. Przed utworzeniem żądania HTTP dodałbyś do kontrolera jakąś akcję, taką jak „parser łącza HTML”.

Preprocesor

Postprocesor

Postprocesor wykonuje jakąś akcję po wysłaniu żądania próbnika.

Rozważ prosty przykład: JMeter wysyła żądanie HTTP do testowanego serwera WWW (itp www.google.com) i uzyskaj odpowiedź. Chcesz JMeter aby zatrzymać test, jeśli odpowiedź serwera jest błędna. Możesz użyć postprocesora, aby wykonać powyższe zadanie w następujący sposób:

Postprocesor

Przykład postprocesora

W tym samouczku znajdziesz instrukcje krok po kroku dotyczące korzystania z postprocesora w JMeter. Zacznijmy od prostego skryptu testowego.

  1. JMeter wysyła żądanie HTTP do testowanego serwera WWW www.google.com.
  2. JMeter otrzymuje odpowiedź z serwera Google.
  3. Jeśli odpowiedź serwera to błąd, JMeter będzie Zatrzymaj się test.
  4. Jeśli odpowiedź serwera OK (żaden błąd), JMeter będzie kontynuować test.

Oto mapa drogowa tego przykładu:

Przykład postprocesora

Warunek wstępny:

We ponowne użycie krok 1 i krok 2 w artykule JMeter Test wydajności.

Krok 1) 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:

Dodaj grupę wątków

To ustawienie pozwala JMeter Stwórz 10 żądanie użytkownika do http://www.google.com 10 razy.

Krok 2) Dodaj JMeter Elementy

  • Dodaj domyślne żądanie HTTP
  • Dodaj żądanie HTTP

Nadal robimy JMeter wysłać prośbę http://www.google.com na serwer Google.

Krok 3) Dodaj element postprocesora

Kliknij prawym przyciskiem myszy Grupa wątków -> Dodaj -> Postprocesor -> Procedura obsługi akcji stanu wyniku

Procedura obsługi akcji stanu wyniku pozwala użytkownikowi zatrzymać wątek lub cały test, jeśli żądanie użytkownika nie powiodło się.

Dodaj element postprocesora

W panelu uchwytu akcji stanu wyniku wybierz Zatrzymaj test teraz. Ten wybór spowoduje zatrzymanie testu, jeśli JMeter uzyskaj błąd z odpowiedzi serwera.

Dodaj element postprocesora

Krok 4) Skonfiguruj żądanie HTTP

Otwórz panel żądań HTTP. Wchodzić "ABC" do pola Ścieżka.

Skonfiguruj żądanie HTTP

Kiedy wejdziesz "ABC" na ścieżkę, JMeter utworzy żądanie adresu URL do serwera Google: http://www.google.com/abc. Ten adres URL nie istnieje na serwerze Google. To jest Wrongs Żądanie adresu URL, aby serwer Google zwrócił błąd.

Krok 5) Dodaj drzewo wyników widoku

Kliknij prawym przyciskiem myszy Grupa wątków -> Dodaj -> Słuchacz -> Wyświetl drzewo wyników

Dodaj drzewo wyników widoku

Krok 6) Uruchom test

Wybierz opcję Wyświetl drzewo wyników i naciśnij przycisk Uruchom na pasku menu. Zobaczysz błąd odpowiedź z serwera Google i test zostanie zatrzymany bez ukończenie 100 wątków.

Uruchom test

Teraz wróć do kroku 4, otwórz panel żądania HTTP, wpisz „kalendarz”do szyby. To sprawia, że JMeter utwórz żądanie adresu URL https://calendar.google.com/calendar/u/0/r na serwer Google. To jest skorygowania Żądanie adresu URL, aby serwer Google zwrócił OK (bez błędu).

Uruchom test

Wybierz opcję Wyświetl drzewo wyników i naciśnij przycisk Uruchom na pasku menu. Zobaczysz OK odpowiedź z serwera Google, a test będzie kontynuowany do momentu ukończenia wszystkich 100 wątków.

Uruchom test

Rozwiązywanie problemów

Jeśli podczas realizacji powyższego scenariusza napotkasz problem, wykonaj następujące czynności:

  1. Sprawdź, czy łączysz się z Internetem za pośrednictwem serwera proxy. Jeśli tak, usuń serwer proxy.
  2. Otwórz nową instancję Jmeter
  3. Otwórz ProcessorTestPlan.jmx w Jmeter
  4. Double-kliknij grupę wątków -> Zobacz drzewo wyników
  5. Uruchom test