how achieve jmeter correlation with example
W tym samouczku wyjaśniono, czym jest korelacja JMeter, dlaczego jej potrzebujemy i jak uzyskać korelację w skryptach JMeter:
Korelacja odgrywa bardzo istotną rolę w skryptach JMeter. Zrozummy, co oznacza korelacja.
Korelacja to związek między dwiema lub więcej zmiennymi. Pomaga w uzyskaniu informacji dotyczących związku w sposób, który użytkownik może zdecydować o przyszłym planowaniu lub działaniach, które mają zostać podjęte.
W tym samouczku nauczysz się, jak uzyskać korelację w skryptach JMeter.
=> Kliknij tutaj Kompletne bezpłatne szkolenie na JMeter (ponad 20 filmów)
Czego się nauczysz:
Samouczek wideo dotyczący korelacji narzędzia JMeter
jaka jest najlepsza witryna do pobrania mp3 za darmo
Korelacja to w zasadzie wyodrębnienie wartości z jednego z żądań, które mogą zostać użyte w kolejnym żądaniu lub którekolwiek z żądań, które należy wykonać dalej.
Do wyodrębniania wartości z żądania potrzebne są procesory. Preprocesory, takie jak HTMLLinkParser, mogą wyodrębnić wszystkie linki ze strony otrzymanej w odpowiedzi.
W większości przypadków postprocesory, takie jak XPath i Regular Expression Extractor, są używane do wyodrębniania wartości z odpowiedzi, a następnie przechowywania wartości w zmiennej. Teraz ta sama zmienna może zostać użyta w następnym żądaniu lub dowolnym żądaniu do wykonania później.
Najczęściej zobaczysz, że JMeter przechwytuje sesję, gotuje, w niektórych przypadkach poświadczenia logowania, a następnie używa ich jako parametru do innych żądań.
Zrozumienie korelacji JMeter
Ten samouczek pozwoli ci jasno zrozumieć, dlaczego i gdzie potrzebujemy korelacji w skryptach JMeter. Zobaczymy również, jak dokonuje się korelacji na przykładzie.
Gdzie potrzebujemy korelacji
Jest używany, gdy dynamiczne wartości z odpowiedzi na poprzednie żądania są wymagane do przesłania do dalszych żądań.
Testowanie wydajności dla Witryna statyczna nie wymaga żadnych dostosowań , może działać z normalną funkcjonalnością nagrywania i działać z liczbą wątków, więc korelacja nie jest wymagana w statycznych witrynach internetowych.
Obecnie większość witryn zawiera dynamiczną zawartość zwracaną z serwera WWW. W przypadku każdego żądania iteracyjnego odpowiedź dynamiczna ma zawsze w zamian inne dane. Dynamiczne witryny internetowe wymagają obsługi tej samej korelacji.
Dlaczego potrzebujemy korelacji
Korelacja dla odpowiedzi dynamicznych działa w ten sposób, że wyodrębnia wartość dynamiczną z odpowiedzi i umieszcza ją w zmiennej, która jest następnie używana przez wymagane żądania, aby skrypt nie zawiódł.
Przykład: W przypadku utworzenia skryptu dla użytkownika do logowania się i wykonywania innych czynności na stronie głównej, skrypt będzie działał tylko raz i nie powiedzie się po raz kolejny, ponieważ użytkownik loguje się w pierwszej sesji, zmienne są tworzone dynamicznie a te zmienne sesyjne pomagają w uwierzytelnianiu czynności wykonywanych na kolejnych żądaniach.
Więc tu musimy skorelować żądania internetowe i zmienne dynamiczne aby skrypt odniósł sukces, co można zrobić na dwa sposoby.
Jednym ze sposobów jest odkrycie przez programistę zmiennych, które mają być skorelowane i zmapowanie ich w celu zastąpienia ich w kolejnych żądaniach. To jest proces ręczny.
Proces ręczny jest skuteczny tylko w przypadku małych skryptów, ponieważ mają one mniej punktów korelacji, a wraz ze wzrostem liczby skorelowanych zmiennych wzrasta również liczba szans na wystąpienie błędu.
Korelacja dużego skryptu powinna zostać zautomatyzowana, ponieważ zmniejszy to wysiłek i czas, a także nie będzie szans na błąd.
Jak można dokonać korelacji
Można przeprowadzić korelację narzędzia JMeter
- Korzystanie z postprocesora „Ekstraktor wyrażeń regularnych”.
- Zmienna do ponownego wykorzystania wszędzie tam, gdzie obecne są dane dynamiczne.
Przeanalizujmy przykład wykorzystania „Ekstraktora wyrażeń regularnych” do skorelowania zmiennych.
Do żądania próbnika należy dodać wyrażenie regularne Extractor, z którego użytkownik chce uzyskać wartość.
Sampler -> Add-> Post Processor -> Ekstraktor wyrażeń regularnych.
Kolejne żądania będą mogły używać wartości zmiennej do dynamicznego mapowania.
Poniżej znajduje się przykład, aby zrozumieć korelację w JMeter.
Kroki :
# 1) Dodaj grupę wątków do planu testów.
#dwa) Dodaj próbnik „Żądanie HTTP” do planu testów i zmień jego nazwę Żądanie 1 i wpisz nazwę serwera lub adres IP witryny.
# 3) Dodaj postprocesor „Ekstraktor wyrażeń regularnych” do planu testów, aby wyodrębnić wartość z odpowiedzi żądania 1 próbki.
Po dodaniu ekstraktora Aby wyodrębnić wartość, należy wypełnić poniższe wartości:
- Nazwa tworzonej zmiennej: Reprezentuje nazwę zmiennej JMeter, w której zostanie zapisana wyodrębniona wartość.
- Wyrażenie regularne: Jest to wyrażenie określające dane z odpowiedzi.
- Szablon : Szablony odnoszą się do grup wyrażeń regularnych. Składnia $ 1 $ reprezentuje grupę 1, podobnie składnia $ 2 $ reprezentuje grupę 2 i tak dalej.
- Numer meczu: Jeśli podano 0, JMeter wybiera dowolne dopasowanie losowe.
- Domyślna wartość: Wartość domyślna jest brana pod uwagę, gdy żadna wartość nie pasuje do wyrażenia regularnego. Użytkownik może podać wartość domyślną, jak chce, np. „Uwierzytelnianie nie powiodło się”, „Nie znaleziono” itp. Cokolwiek definiuje błąd.
# 4) Dodaj kolejny Sampler “Żądanie HTTP” i nazwij go Request2. Dane żądania tego Samplera zostaną wyodrębnione z danych odpowiedzi pierwszego dodanego żądania HTTP.
Dodaj ścieżkę do żądania. Nazwa serwera lub IP nie jest tutaj wymagana. Ścieżka musi być zdefiniowana za pomocą $ {Name}
# 5) Dodaj Listener „Wyświetl drzewo wyników” do planu testów, aby wyświetlić korelację między żądaniem 1 i żądaniem 2.
# 6) Uruchom plan testów i zobacz wynik. Żądanie 2 będzie miało pewne wartości wyodrębnione z żądania 1.
Często zadawane pytania dotyczące korelacji narzędzia JMeter
Pytanie 1) Jak przeprowadzasz korelację i parametryzację w JMeter?
Odpowiedź : Parametryzacja jest używana, gdy w skrypcie wymagana jest duża liczba różnych użytkowników. Różnych użytkowników i dane można pobrać za pomocą plików CSV. Tak więc, jeśli skrypt działa z liczbą wątków równą 50, za każdym razem pobierze nowy szczegół użytkownika z pliku CSV.
Do obsługi korelacji postprocesor „Ekstraktor wyrażeń regularnych” jest używany do wyodrębniania wartości zmiennej z pierwszego żądania kolejnego żądania.
czym różni się Java od C ++
Parametryzacja wyszukuje wartości wejściowe użytkownika, podczas gdy korelacja wyszukuje dane zwracane przez serwer dla utworzonego żądania.
Pytanie 2) Jak JMeter obsługuje wartości dynamiczne?
Odpowiedź : Aby obsłużyć wartości dynamiczne narzędzia JMeter, należy wykonać dwa kroki, tj. Jeden, aby pobrać i zapisać wartość dynamiczną z odpowiedzi, a drugi, aby użyć tej wartości w kolejnym żądaniu. Odbywa się to za pomocą postprocesora wyodrębniającego wyrażenia regularne.
Pytanie 3) W jaki sposób narzędzie JMeter koreluje wartości nagłówków?
Odpowiedź : Aby skorelować wartości nagłówka w JMeter „Ekstraktor wyrażeń regularnych”, wymagany jest postprocesor.
- W tym Zastosuj do - „Próbka główna” i dla pole do zaznaczenia „Nagłówki odpowiedzi” musi zostać wybrany.
- Wpisz wartości dla wszystkich pól.
- Nazwa podana w nazwie utworzonej zmiennej będzie miała wartość zmiennej przechowywanej w JMeter. Podaj wyrażenie w sekcji Wyrażenie odwołania, wybierze rzeczywistą wartość parametru nagłówka odpowiedzi.
- Podaj nazwę szablonu jako $ 1 $.
- Teraz, aby uzyskać wartość, użyj znaku $ i nazwy zmiennej w nawiasach klamrowych, takich jak $ {Nazwa zmiennej}
Wniosek
Korelacja jest bardzo ważnym aspektem JMeter. Witryny statyczne nie wymagają korelacji, ale witryny dynamiczne wymagają korelacji, ponieważ serwer reaguje na zmienne dynamiczne, które zmieniają się za każdym razem. aby skrypty były ponownie używane, wymagana jest korelacja między wartościami zmiennych.
Z tego powodu „Ekstraktor wyrażeń regularnych” służy do wyodrębniania wartości zmiennej z jednego żądania w celu użycia ich w kolejnych żądaniach.
rekomendowane lektury
- JMeter Timers: Constant, BeanShell i Guassian Random Timer
- Jmeter Controllers Część 1
- Jmeter Controllers Część 2
- 5 najlepszych wtyczek JMeter i jak ich używać (z przykładami)
- Praca z żądaniem FTP w JMeter
- Korzystanie z Post Processor w JMeter (Regular Expression Extractor)
- Zmienne i funkcje narzędzia JMeter
- Testowanie bazy danych za pomocą narzędzia JMeter