using post processor jmeter
W tym samouczku nauczysz się korzystać z JMeter Post Processor, takiego jak Regular Expression Extractor, BeanShell, JDBC, Boundry Extractor itp .:
Procesory są dwojakiego rodzaju Preprocesor i Postprocesor .
Pre Processor jest wykonywany przed wykonaniem próbnika. Postprocesory służą do wykonywania danych odpowiedzi z serwera i zapisywania określonych wyodrębnionych wartości do późniejszego wykorzystania.
Postprocesory to czynności wykonywane po wykonaniu próbnika. Możesz ich użyć, aby wykonać pewne działania na swojej odpowiedzi lub wyodrębnić niektóre wartości z odpowiedzi i zapisać je w zmiennej, której można użyć później.
=> Kliknij tutaj Kompletne bezpłatne szkolenie na JMeter (ponad 20 filmów)
Czego się nauczysz:
- Samouczek wideo dotyczący postprocesora JMeter
- Procesory JMeter POST
- # 1) Ekstraktor wyrażeń regularnych
- # 2) Ekstraktor CSS / JQuery
- # 3) Ekstraktor XPath
- # 4) Status wyniku Procedura obsługi działania
- # 5) Post Processor BeanShell
- # 6) Postprocesor JSR223
- # 7) Postprocesor JDBC
- # 8) Postprocesor ścieżki JSON
- # 9) Boundary Extractor
- # 10) Postprocesor debugowania
- Często zadawane pytania dotyczące postprocesora
- Wniosek
Samouczek wideo dotyczący postprocesora JMeter
Postprocesor wyrażeń regularnych używa ciągu wyrażeń regularnych do pobierania niektórych wartości z odpowiedzi na żądanie. Wyodrębniona wartość (wartości) mogą być przechowywane w dowolnej zmiennej i mogą stanowić odniesienie w każdym kolejnym żądaniu w planie testów. Po dodaniu tego procesora wartości można wyodrębnić z treści odpowiedzi, nagłówka, adresu URL, kodu odpowiedzi i innych podanych pól.
Procesory JMeter POST
Post Processor jest wykonywany po zakończeniu wykonywania żądania Samplera. W narzędziu JMeter używane są różne postprocesory.
Lista elementów obejmuje:
- Ekstraktor wyrażeń regularnych
- Ekstraktor CSS / JQuery
- Ekstraktor XPath
- Postprocesor BeanShell
- Stan wyniku Procedura obsługi działania
- Postprocesor JSR223
- Postprocesor JDBC
- Postprocesor ścieżki JSON
- Boundary Extractor
- BSF Post Processor
- Postprocesor debugowania
Przejdźmy przez te postprocesory JMeter:
# 1) Ekstraktor wyrażeń regularnych
Ekstraktor wyrażeń regularnych jest używany do pobierania Informacja z odpowiedź serwera . To używa Typ Perla Wyrażenie regularne do wydobywania informacji, tj. wartości. Ten procesor będzie działał po wykonaniu każdego żądania próbnika.
Jak to działa:
Żądanie próbki -> Zastosuj Ekstraktor wyrażeń regularnych -> Ekstrakcja informacji / wartości -> Generowanie ciągu szablonów -> Przechowywanie wyodrębnionej wartości / informacji w określonej nazwie zmiennej
- Utwórz plan testów
- Dodaj grupę wątków
- Dodaj próbnik „Żądanie HTTP”
- Dodaj procesor „Ekstraktor wyrażeń regularnych”
Zastosuj do: „ Zastosuj do ”ma 4 opcje.
- Próbka główna i próbki podrzędne: Dotyczy to zarówno próbek głównych, jak i próbek podrzędnych.
- Tylko główne próbki: Jest stosowany tylko do głównych próbek.
- Tylko próbki podrzędne: Jest stosowany tylko do próbek podrzędnych.
- Zmienna JMeter: Ekstrakcja jest stosowana tylko do nazwanej zmiennej.
Pole do sprawdzenia: Pole do sprawdzenia ma kilka opcji. Wszystkie nazwy pól są oczywiste, jak sugeruje ich nazwa.
- Ciało reprezentuje treść odpowiedzi, tj. treść bez nagłówków.
- Treść (bez zmiany znaczenia): Treść odpowiedzi, w której został zastąpiony cały kod zmiany znaczenia HTML.
- Treść jako dokument - Z liczby dokumentów pobierane są dane.
Nazwa utworzonej zmiennej spowoduje zapisanie wyodrębnionego tekstu.
Wyrażenie regularne dopasuje wzorzec do wyodrębnionego tekstu. „. +?” reprezentuje pojedyncze wystąpienie tekstu umieszczonego przez znaczniki.
Szablon: Szablon służy do tworzenia ciągu znaków dla dopasowania wyodrębnionych wartości.
$ 1 $ reprezentuje grupę 1
Dopasowanie nr (0 dla losowego): Aby uzyskać, który z nich wybrać jako zmienną.
- 0 wskazuje losowy wartość z znalezionych wyników.
- N-ty numer wskazuje n-ty numer z znalezionych wyników.
- Każdy negatywny liczba - wskazuje, że wszystkie dane Powinien być wytłoczony .
Domyślna wartość: Wartość odniesienia jest ustawiona na wartość domyślną w przypadku Wyrażenie regularne nie pasuje.
Dodaj drzewo wyników widoku listenera.
# 2) Ekstraktor CSS / JQuery
Ekstraktor selektora CSS służy do wyodrębniania wartości / informacji z pliku Odpowiedź HTML serwera.
Jak to działa:
- Utwórz plan testów
- Dodaj grupę wątków
- Dodaj próbnik „Żądanie HTTP” do wątku.
- Dodaj procesor ” Ekstraktor selektora CSS ”I podaj poniższe szczegóły:
Implementacja ekstraktora CSS / JQuery : Dostępne są dwie opcje wdrożenia:
- Czy p
- Jodd-Lizard
W przypadku, gdy żadna z implementacji nie jest wybrana domyślnie Czy p jest uważany.
Wyrażenie selektora CSS: Do ekstrakcji można użyć lokalizatora CSS. Powiedzmy, że użytkownik musi wyodrębnić listę miast, z których odleci samolot, w witrynie rezerwacji. Użytkownik może podać lokalizator CSS w polu, aby uzyskać oczekiwany wynik.
Wyrażenie selektora CSS służy do wybierania węzłów z danych odpowiedzi HTML z serwera.
Dodaj odbiornik „Wyświetl drzewo wyników”, aby wyświetlić wyniki.
# 3) Ekstraktor XPath
Ekstraktor XPath używa Język zapytań Xpath wyodrębnić wartość z Odpowiedzi XML lub X (HTML).
Weźmy przykład, jak można użyć ekstraktora Xpath:
- Utwórz plan testów
- Dodaj grupę wątków
- Dodaj domyślny element konfiguracji żądania HTTP do grupy wątków i podaj nazwę serwera lub adres IP.
- Dodaj dwa próbniki HTTP i podaj w nich ścieżkę szczegółów.
- Dodaj ekstraktor Xpath i podaj szczegóły jako:
- Imię twórcy: Wynik zostanie zapisany w utworzonej nazwie zmiennej, która jest podana w tym polu.
- Zapytanie XPath: Zapytanie w języku XPath.
- Match No (0 for Random): 0 wyodrębni losową wartość, a -1 wyodrębni wszystkie wartości.
- Wartość domyślna: NOTFOUND
- Zwrócona zostanie wartość domyślna NIE ZNALEZIONO na wypadek, gdyby nie znaleziono dopasowania.
Użyj Tidy należy wybrać, aby odpowiedź HTML została przekonwertowana na XHTML.
- Dodaj próbnik debugowania. Służy do debugowania skryptu, a jego wynik można zobaczyć przez dodany detektor.
- Dodaj odbiornik jako Wyświetl drzewo wyników.
# 4) Status wyniku Procedura obsługi działania
Procedura obsługi akcji stanu wyniku pozwala użytkownikowi wybrać akcję, która ma zostać podjęta, gdy próbnik napotka jakikolwiek błąd.
Można podjąć następujące działania:
- Kontyntynuj
- Rozpocznij następną pętlę wątku
- Zatrzymaj wątek
- Zatrzymaj test
- Zatrzymaj test teraz
- Przerwij pętlę prądową
- Przejdź do następnej iteracji bieżącej pętli
Weźmy przykład, gdy Zatrzymaj test teraz opcja jest wybrana.
- Utwórz plan testów
- Dodaj procesor -> Wynik Status Action Handler i wybierz Opcja Zatrzymaj test teraz
- Dodaj element konfiguracji -> Żądanie HTTP jest domyślne i podaj plik nazwa serwera lub adres IP
- Dodaj sampler -> Żądania HTTP z zasobami ścieżki /
- Dodaj kolejny sampler z nieprawidłową ścieżką
- Dodaj kolejny sampler ze ścieżką do strony głównej.
- Dodaj odbiorcę -> Wyświetl wyniki w tabeli i uruchom skrypt.
Ponieważ jako czynność wybrano opcję Zatrzymaj test teraz, procesor nie pozwolił na uruchomienie następnego próbnika.
# 5) Post Processor BeanShell
Ten procesor jest wykonywany po próbniku.
Zresetuj bsh.Interpreter przed każdym wywołaniem: Dla każdego próbnika interpreter zostanie odtworzony w przypadku wybrania tej opcji.
Parametry: Parametry to te, które zostaną przekazane do skryptu powłoki Bean.
Pliki skryptów: Plik skryptu to plik, w którym przechowywany jest skrypt Beanshell do uruchomienia.
Scenariusz: Skrypt to skrypt Beanshell.
# 6) Postprocesor JSR223
W tym procesorze skrypt jest stosowany tylko po uruchomieniu próbnika.
Weźmy przykład na to samo:
- Utwórz plan testów
- Dodaj grupę wątków
- Dodaj sampler -> Żądanie HTTP do wątku i podaj nazwę serwera lub adres IP.
- Dodaj procesor „Postprocesor JSR223” do wątku. Wybierz język Groovy jak na poniższym zrzucie ekranu:
Napisz skrypt, używając składni jak poniżej i obserwuj wyniki w dziennikach:
Dzienniki można pisać zmienne jak również, jak pokazano na poniższym ekranie:
Można również dodać nowe zmienne. Zobacz poniższy zrzut ekranu dla tego samego.
Dodaj próbnik debugowania do wątku i odbiornika jako Wyświetl drzewo wyników i uruchom test.
# 7) Postprocesor JDBC
Zapytania SQL są uruchamiane po wykonaniu próbnika w celu wprowadzenia zmian, które należy cofnąć po zakończeniu testowania lub nie są wymagane.
Może być używany przez,
- Tworzenie planu testów
- Dodaj konfigurację połączenia JDBC ze szczegółami adresu URL i poświadczeń.
- Dodaj żądanie JDBC, podając dane wejściowe, takie jak nazwy zmiennych i dane wyjściowe, jako nazwę zmiennej wynikowej. Typ zapytania można wybrać z listy, jak pokazano poniżej:
- Dodaj próbnik debugowania, aby wyświetlić wartości zmiennych.
- Dodaj drzewo Zobacz Listener View Results, aby wyświetlić wyniki.
# 8) Postprocesor ścieżki JSON
To Edytor pobiera dane z Odpowiedź JSON za pomocą Składnia ścieżki JSON. Jest tworzony pod Samplerem, który ma odpowiedź.
- Utwórz plan testów
- Dodaj grupę wątków do planu testów.
- Dodaj żądanie HTTP próbnika.
- Dodaj element config jako „Menedżer nagłówków HTTP”.
- Dodaj procesor jako Procesor ścieżki JSON
- Dodaj procesor JSR223, wybierz język powłoki Bean i podaj skrypt.
- Dodaj odbiornik „Wyświetl drzewo wyników”.
- Uruchom test.
Nazwa utworzonego pola to ta, w której przechowywany jest wynik. $ .name w wyrażeniu ścieżki JSON reprezentuje wszystkie nazwy, które mają się znaleźć w wyniku. 0 numer dopasowania służy do wyboru wartości losowej. Jeśli nic nie zostanie zwrócone, w takim przypadku zostanie wyświetlone nazwa_nie znaleziona .
# 9) Boundary Extractor
Ekstraktor brzegowy wyodrębnia dane z granice odpowiedzi serwera po wykonaniu próbnika. Po wyodrębnieniu danych / wartości należy wygenerować ciąg szablonu, a następnie wyniki są przechowywane w podanej nazwie zmiennej.
porównaj dwa pliki wiersz po wierszu
Jak używać:
- Utwórz plan testów
- Dodaj wątek do planu testów
- Dodaj próbnik -> Żądanie HTTP w wątku.
- Dodaj procesor ekstraktora granic i wypełnij szczegóły, jak pokazano poniżej na zrzucie ekranu:
Nazwa utworzonej zmiennej: Wynik jest przechowywany w utworzonej nazwie zmiennej, która jest podana w tym polu.
Lewa granica : Wartość lewej granicy do znalezienia.
Prawa granica : Wartość prawej granicy do znalezienia.
- Dodaj procesor JSR223, aby wynik był drukowany w dziennikach.
# 10) Postprocesor debugowania
Ten procesor jest używany, jeśli w przypadku konieczności debugowania dowolnego próbnika, jest on dodawany jako element podrzędny do tego próbnika.
Często zadawane pytania dotyczące postprocesora
P # 1) Czy JMeter może być używany do testów jednostkowych?
Odpowiedź : Tak, można go używać do testów jednostkowych. Może być używany jako narzędzie do testowania jednostek dla usług sieciowych, połączeń FTP, LDAP, baz danych Java (JDBC), połączeń TCP.
Pytanie 2) Jak zapisać treść żądania w narzędziu JMeter?
Odpowiedź : Aby zapisać żądanie, można użyć odbiornika „Wyświetl drzewo wyników”.
Dodaj-> Listener-> Wyświetl drzewo wyników -> przycisk Konfiguruj-> Wybierz w jakim typie mają być przechowywane dane
P # 3) Jaka jest kolejność wykonywania elementów JMeter?
Odpowiedź : Poniżej wymieniono kolejność wykonywania elementów Jmeter, gdy w grupie wątków znajduje się wiele elementów.
- Elementy konfiguracji
- Preprocesor (tylko jeśli są stosowane w dowolnym próbniku)
- Timery (tylko jeśli są stosowane do dowolnego samplera)
- Próbnik
- Postprocesor (tylko jeśli są stosowane do dowolnego próbnika)
- Asercje (tylko jeśli są stosowane do dowolnego próbnika)
- Słuchacze
Pytanie 4) Co to jest JSR223 w JMeter?
Odpowiedź : JSR223 to skryptowy interfejs API dla języków Java. JMeter ma takie elementy jak JSR223 Sampler, JSR223 Pre-Processor, JSR223 Post Processor, JSR223 Listener. JSR223 pomaga w wykonywaniu skryptów napisanych w różnych językach.
Pytanie 5) Czy JMeter jest dobry do testowania API?
Odpowiedź : Jest to narzędzie typu open source, które może być używane do testowania API, a także do testowania funkcjonalnego, wydajnościowego, obciążenia i automatyzacji.
P # 6) Jaki język jest używany w JMeter?
Odpowiedź : Język Groovy jest najczęściej używany i jest odpowiedni, ponieważ język skryptowy Groovy jest łatwy w użyciu i można go zintegrować z Javą, aby zwiększyć potencjał skryptowy.
Wniosek
Postprocesory, jak nazwa sugeruje, biegnij opublikować wykonanie próbnika . Wszystkie procesory odgrywają własną rolę i wyodrębniają dane z różnych odpowiedzi jako Ekstraktor wyrażeń regularnych używa Typ Perla wyrażenie regularne do wyodrębniania wartości z odpowiedzi serwera, Ekstraktor selektorów CSS używa selektora CSS do wyodrębniania danych z Odpowiedzi HTML .
Ekstraktor XPath używa Język zapytań XPath aby wyodrębnić dane z Odpowiedzi XML lub XHTML . Ekstraktor JSON używa Zapytanie JMESPath język. Wynik Procedura obsługi akcji stanu obsługuje wynik, pozwalając zatrzymać wątek, jeśli próbnik ulegnie awarii. Ekstraktor brzegowy wyodrębnia wartości z granic odpowiedzi serwera.
=> Kliknij tutaj Kompletne bezpłatne szkolenie na JMeter (ponad 20 filmów)
rekomendowane lektury
- Postprocesor Xpath Extractor w JMeter
- C # Regex Tutorial: Co to jest wyrażenie regularne C #
- C ++ samouczek wyrażeń regularnych: Wyrażenia regularne w C ++ z przykładami
- Java Regex Tutorial z przykładami wyrażeń regularnych
- Procesory i kontrolery JMeter
- Wyrażenie regularne $ regex MongoDB z przykładem
- 5 najlepszych wtyczek JMeter i jak ich używać (z przykładami)
- Jak i kiedy używać skryptów Postman Pre Request i Post Request?