HP LoadRunner – Odtwarzanie skryptu

Kontynuacja publikacji poświęconych HP LoadRunnerowi, przygotowana przez testywydajności.pl.

 

W poprzednim artykule rejestrowaliśmy zestaw typowych działań użytkownika na aplikacji Web Tours, a VuGen przetworzył je na skrypt Vuser. Za pomocą VuGen można odtworzyć skrypt Vusera symulując tylko jednego użytkownika, do symulacji wielu użytkowników służy Controller. Teraz możemy zabrać się za sprawdzenie, jak nasz skrypt został nagrany i czy działa prawidłowo, zanim zostanie włączony do scenariusza testowego i uruchomiony z modułu Controller.

Weryfikacja skryptu polega na odtworzeniu go w VuGen. Czasami odtwarzanie nagranego skryptu może zakończyć się błędnie, pomimo że podczas nagrywania wszystko działało poprawnie. Najczęściej jest to spowodowane dynamicznymi wartościami, które są inne przy każdej próbie uruchomienia skryptu. W tym artykule spróbujemy odtworzyć skrypt w takiej formie, w jakiej został nagrany, bez wprowadzania zmian w kodzie.

Przed rozpoczęciem odtwarzania należy skonfigurować kilka ustawień skryptu, które definiują zachowanie wirtualnego użytkownika. Ustawienia środowiska określają sposób, w jaki skrypt Vuser działa, konfiguracja może nastąpić przed lub po nagraniu scenariusza. Ustawienia te są przechowywane w folderze skryptu oraz aplikowane zaraz po uruchomieniu skryptu za pomocą VuGen, Controller, Performance Center, czy Business Process Monitor.

 

Ustawienia odtwarzania

Konfiguracja ustawień pozwala emulować różne rodzaje aktywności wirtualnych użytkowników, na przykład możemy utworzyć użytkownika, który reaguje natychmiastowo na wyjście z serwera lub zatrzymuje się i myśli przed dokonaniem operacji. Istnieją ogólne ustawienia odtwarzania oraz specyficzne opcje dla wybranych protokołów. W tym wpisie skupimy się na trybie ogólnym, w skład którego wchodzą:

  • Run Logic - liczba powtórzeń określonych części skryptu, jaką wykona wirtualny użytkownik;
  • Pacing - czas pomiędzy powtórzeniami;
  • Log - ilość informacji, jaka ma zostać zebrana podczas odtwarzania;
  • Think Time - czas przerwy między określonymi krokami w skrypcie.

Aby otworzyć okno ustawień należy po wczytaniu nagranego skryptu w VuGen wybrać Replay > Runtime Settings

 

Zrzut ekranu 1. VuGen - menu Replay opcja Runtime Settings Run Logic.

 

Aby wyświetlić opcję Run Logic na oknie Runtime Settings w lewym panelu pod General klikamy Run Logic. Opcja ta umożliwia ustawienie liczby kolejnych wykonań (ilości iteracji) dla skryptu. Aby upewnić się, że skrypt jest poprawny oraz że jego wykonanie w czasie trwania testów obciążeniowych także się powiedzie ustawiamy liczbę iteracji na wartość większą niż 1, czyli np. 2. Zgodnie z tym, co zostało omówione w poprzedniej części artykułu poświęconemu Load Runnerowi, w sekcji Run Logic Tree widzimy, że tylko część Action skryptu Vusera zostanie wykonana 2 razy.

 

Zrzut ekranu 2. VuGen - Runtime Settings - Run Logic Pacing.

 

W celu zmiany ustawień rytmu odtwarzania na oknie Runtime Settings w lewym panelu pod General klikamy Pacing. Konfiguracja rytmu daje nam możliwość kontroli czasu pomiędzy pojedynczymi iteracjami. W naszym teście wybieramy opcję losową Random, która emuluje najbardziej zbliżoną do rzeczywistości sytuację. Dzieje się tak, ponieważ użytkownicy wykonują czynności i postoje między przejściami z różnymi odstępami w czasie. Wybieramy trzeci z kolei radiobutton, w polu dropdown zmieniamy opcję z Fixed na Random i do pól tekstowych wprowadzamy następujące dane: "60" i "90".

 

Zrzut ekranu 3. VuGen - Runtime Settings - Pacing Log.

 

Aby wyświetlić ustawienia dla zbieranych logów na oknie Runtime Settings, w lewym panelu pod General klikamy Log. W sekcji Log określamy ilość danych zbieranych podczas odtwarzania skryptu. W przypadku debugowania skryptu i problemów z jego odtwarzaniem przyda się więcej logów. W naszym przypadku oprócz domyślnie zaznaczonych opcji oznaczmy radiobutton Extended log oraz Parameter substitution.

 

Zrzut ekranu 4. VuGen - Runtime Settings - Log Think Time.

 

Na oknie Runtime Settings w lewym panelu pod General klikamy w opcję Think Time. Pozostawiamy domyślnie zaznaczone opcje Ignore think time - opcję tę ustawimy za pomocą narzędzia Controller w późniejszym etapie, a obecnie nagrane kroki Think Time zostaną pominięte. Na tym etapie wybranie np. opcji Replay think time as recorded wydłużyłoby czas odtwarzania skryptu.

 

Zrzut ekranu 5. VuGen - Runtime Settings - Think Time.

 

Zapisujemy wprowadzone zmiany całości poprzez "Save". Zapisujemy w ten sposób wszystkie ewentualne zmiany w skrypcie Vusera, a nie tylko zmiany w Runtime Settings. Dodatkowo włączamy też rejestrowanie ogólnych statystyk z odtworzenia skryptu Vusera. Zawierają one informacje statystyczne z kolejnych akcji lub transakcji w zależności od połączeń, przesyłanych typów elementów oraz statusów odpowiedzi. Włączamy je w ustawieniach, wybierając z głównego menu Tools > Options , następnie wybieramy zakładkę Scripting i z lewego menu opcję Replay, gdzie oznaczamy checkbox Collect replay statistics, po czym potwierdzamy wprowadzone zmiany, klikając "OK".

 

Zrzut ekranu 6. VuGen - Options - włączenie opcji zbierania statystyk podczas odtwarzania skryptu - Collect replay statistics.

 

Odtwarzanie skryptu

Mamy już skrypt oraz ustawione parametry odtwarzania, pora więc na uruchomienie skryptu. Aby odtworzyć nagrany skrypt na górnym menu, klikamy Replay > Run lub przycisk Replay na pasku narzędzi.

 

Zrzut ekranu 7. VuGen - opcja Replay > Run w menu.

 

Przed uruchomieniem skryptu trzeba się upewnić, czy nasz serwer jest uruchomiony i czy testowana aplikacja działa. Podczas odtwarzania skryptu Vusera w VuGen nie zobaczymy żadnego okna przeglądarki, a skrypt jest uruchamiany tylko dla jednego użytkownika - ma to na celu tylko sprawdzenie, czy skrypt działa. VuGen zapewnia szereg wskaźników, które wskazują na to, że skrypt jest uruchomiony. Między innymi można zauważyć informacje w formie tekstowej "Running..." w dolnym lewym rogu okienka oraz żółty marker w edytorze, który wskazuje na określoną linię kodu aktualnie odtwarzaną. Zmienia się także układ formatek w oknie VuGen z Default Layout na Replay Layout, co ma pomóc w śledzeniu odtwarzania, a na zakładkach obok nazw pojawiają się kłódki blokujące wprowadzanie zmian w ustawieniach i kodzie skryptu.

 

Zrzut ekranu 8. VuGen - odtwarzanie się skryptu - "Running...".

 

Podsumowanie odtwarzania

Po zakończeniu odtwarzania istnieje możliwość podejrzenia podsumowania. Zawiera ono podstawowe informacje, takie jak status z odtwarzania skryptu, czas trwania oraz godziny rozpoczęcia i zakończenia odtwarzania. Dodatkowo karta Replay Summary dostarcza zbiór danych dotyczących dziennika zdarzeń skryptowych i szczegółowy wynik wykonania skryptu dla kolejnych części skryptu.

 

Zrzut ekranu 9. VuGen - Replay Summary - wyświetlone po odtworzeniu skryptu.

 

Jeśli kroki, jakie nagraliśmy w skrypcie, nie zostały rozdzielone pomiędzy transakcje to ogólne statystyki zostaną zebrane dla trzech podstawowych części skryptu Vusera (vuser_init, Action, vuser_end) oraz kolejnych iteracji części Action. Jeśli zaś wprowadzimy transakcje to statystyki zostaną zebrane dla części vuser_init, vuser_end oraz kolejnych transakcji. NV Insights Report dostępny z karty Replay Summary jest obszernym raportem analizy sieci, który dostarcza informacji o tym, jak aplikacja działa w różnych sieciach podczas uruchamiania scenariusza (zrzut ekranu 10). Podgląd zawiera wszystkie działania zawarte w skrypcie. Każdemu działaniu przypisany jest wynik wydajności oznaczony literą (od A do F) i procent, a także szczegóły dotyczące przepustowości i czasu potrzebnego na ukończenie działania.

 

Zrzut ekranu 10. VuGen - Replay Summary - NV Insights Report.

 

Dane z uruchomienia skryptu oraz raport z odtworzenia skryptu są zapisywane w katalogu skryptu Vusera, przez co przy ponownym wczytaniu skryptu do VuGen nie ma konieczności ponownego jego odtwarzania.

 

Przeglądanie logów

Logi z odtwarzania skryptu sprawdzamy w panelu Output. Można w nim prześledzić wpisy z określonych akcji wykonanych przez skrypt. Teraz przejdźmy do dziennika odtwarzania:

  1. Na oknie VuGen klikamy View > Output - panel jest widoczny na dole okna, domyślnie jest także widoczny podczas odtwarzania skryptu po przełączeniu się widoku na Replay Layout;

  2. Upewniamy się, że opcja Replay jest wybrana na liście w panelu Output (zrzut ekranu 11);

  3. Z menu VuGen wybieramy Search > Quick Find, aby otworzyć okno dialogowe wyszukiwania;

  4. Ze Scope wybieramy Current Script (bieżący skrypt);

  5. Rozwijamy sekcję Include in search oraz zaznaczmy checkbox Logs (zrzut ekranu 12);

  6. Używamy wyszukiwarki do zlokalizowania następujących pozycji:

    • "Virtual User Script Started" - początek odtwarzania skryptu (zrzut ekranu 13);
    • "Vuser Terminated" - koniec odtwarzania skryptu (zrzut ekranu 14);
    • "iteration" - początek i zakończenie poszczególnych iteracji w skrypcie oraz ich numer (zrzut ekranu 15);
    • "web_reg_find" - aby odnaleźć wpisy, które dodaliśmy podczas nagrywania, sprawdzające występowanie tekstu na stronach aplikacji (zrzut ekranu 16).

 

 

Zrzut ekranu 11. VuGen - logi z odtwarzania prezentowane w panelu Output.

 

Zrzut ekranu 12. VuGen - okno wyszukiwania logi z odtwarzania prezentowane w panelu Output.

 

Zrzut ekranu 13. VuGen - Output - wyszukiwanie ciągu "Virtual User Script Started" w logach.

 

Zrzut ekranu 14. VuGen - Output - wyszukiwanie ciągu "Vuser Terminated" w logach.

 

Zrzut ekranu 15. VuGen - Output - wyszukiwanie ciągu "iteration" w logach.

 

Zrzut ekranu 16. VuGen - Output - wyszukiwanie ciągu "web_reg_find" w logach.

 

Klikając podwójnie w linię ze wpisem w panelu Output VuGen, zostaniemy przekierowani na odpowiednią linię kodu w edytorze VuGen, co ułatwi śledzenie i rozpoznawanie błędów.

 

Zrzut ekranu 17. VuGen - odwołanie wpisów w logach do wpisów w edytorze.

 

Panel Output wyświetla kroki, które wykonały się pomyślnie w kolorze zielonym, zaś te, które zakończyły się niepowodzeniem, na czerwono. Odtworzenie naszego skryptu zakończyło się pomyślnie, zasymulujmy więc odtworzenie skryptu zakończone niepowodzeniem. Aby ułatwić sobie to zadanie, przed ponownym uruchomieniem skryptu wyłączmy serwer Web Tours, następnie uruchommy skrypt nie zmieniając nic w kodzie skryptu. W VuGen w panelu Output zostaną zaprezentowane logi z wykonania skryptu ze statusem wykonania "Replay status failed". W logach zostaną zaprezentowane wpisy z błędem dla wierszy, które zwróciły błąd.

Action.c(4): Error -27792: Failed to connect to server "localhost:1080": [10061] Connection Refused [MsgId: MERR-27792].

Log został oznaczony kolorem czerwonym. Ten sam błąd występuje na każdej z iteracji skryptu, klikając podwójnie na log z błędem narzędzie wskaże odpowiedni krok w edytorze skryptu.

 

Zrzut ekranu 18. VuGen - przykład błędu podczas odtwarzania skryptu.

 

Podsumowanie

W tym artykule przedstawiliśmy, jak uruchomić i sprawdzić poprawność nagranego skryptu w VuGen. Nagrany skrypt nie wymagał parametryzacji, co ułatwiło jego uruchomienie. Przedstawiono również podstawowe opcje ustawień dla odtwarzanego skryptu oraz możliwości przeglądania logów utworzonych z odtworzonego skryptu Vusera.  

 

Źródła

https://admhelp.microfocus.com/lr/en/12.55/help/WebHelp/Content/Tutorial/Introducing_LoadRunner.htm https://lrhelp.saas.hpe.com/en/12.55/help/PDFs/HPE%20LoadRunner%20Tutorial.pdf https://marketplace.microfocus.com/appdelivery/content/web-tours-sample-application

 

 

 
 

Najbliższe terminy szkoleń

Partnerzy

Narzędzia testerskie