Apache JMeter
Apache JMeter: Testowanie zapisu scenariusza
Szukaj…
Wprowadzenie
Nagrywanie scenariuszy testowych jest jednym z najwygodniejszych sposobów tworzenia skryptów testowych. Wynika to z faktu, że nagrania testowe pozwalają naśladować realistyczne przepływy pracy użytkowników, zamiast konieczności ręcznego tworzenia skryptu testowego. Nagrania przechwytują wszystkie żądania przeglądarki do aplikacji internetowej, a następnie automatycznie tworzą plik jmx, który można uruchomić w testach wydajności. Korzystając z funkcji nagrywania / odtwarzania JMeter lub narzędzi innych firm, takich jak BlazeMeter i BadBoy, testerzy mogą przyspieszyć swoją pracę 3 razy.
Nagrywanie skryptu za pomocą funkcji szablonu JMeter
W wersji 2.10 JMeter wprowadził mechanizm oszczędzający czas podczas tworzenia skryptów - Szablony JMeter. Te szablony to szkielety, które można ponownie wykorzystać jako bazę dla nowych skryptów.
JMeter ma już kilka dostępnych szablonów ze szczegółowymi opisami, a także możesz dodać własny. Szablony mają wszystkie wymagane konfiguracje i elementy do rejestrowania skryptów wydajności od zera.
Oto jak korzystać z funkcji szablonu JMeter:
Skonfiguruj JMeter
Otwórz JMeter
Wybierz szablon do nagrywania skryptu:
Plik -> Szablony… -> Wybierz szablon -> Nagrywanie -> Utwórz JMeter doda odpowiednie elementy do drzewa testowego.
Skonfiguruj serwer proxy przeglądarki
Aby korzystać z JMeter Recorder, musisz skonfigurować przeglądarkę tak, aby wysyłała wszystkie żądania za pośrednictwem serwera proxy. Do tych potrzeb można użyć dowolnej przeglądarki, chociaż mogą występować różnice między lokalizacjami konfiguracji przeglądarek, które są specyficzne dla przeglądarki i mogą się różnić w zależności od systemu operacyjnego.
Aby skonfigurować przeglądarkę:
Chrome : przycisk Menu -> Ustawienia -> Pokaż ustawienia zaawansowane… -> Sieć -> Zmień ustawienia proxy
Safari : Preferencje -> Zaawansowane -> Proxy -> Zmień ustawienia ...
Firefox : przycisk Menu -> Preferencje -> Zaawansowane -> Sieć -> Połączenie -> Ustawienia ..
Na przykład możesz użyć hosta lokalnego 127.0.0.1. Zmień port na port w rejestratorze skryptów HTTP (S).
Jeśli masz problemy z ukończeniem tego etapu, sprawdź, czy nie masz żadnych wtyczek innych firm, które mogłyby zarządzać ustawieniami proxy przeglądarki. Jeśli tak, na przykład Hola VPN, ustawienia proxy będą niedostępne w menu przeglądarki.
- Kliknij przycisk „Start” znajdujący się na dole strony „Rejestrator skryptów testowych HTTP (S) i przejdź do przepływu pracy aplikacji internetowej, którą chcesz przetestować. Gdy wrócisz do JMeter, powinieneś zobaczyć wszystkie przechwycone żądania z przeglądarki.
Nagrywanie skryptu za pomocą rejestratora proxy JMeter
JMeter umożliwia także ręczne skonfigurowanie obszaru roboczego. Jest to bardziej złożone, ale możesz dostosować skrypty dokładnie do swoich potrzeb.
Skonfiguruj serwer proxy przeglądarki
- Skonfiguruj przeglądarkę zgodnie z opisem w rozdziale 1.
Skonfiguruj JMeter
Oddział „WorkBench” może być używany jako tymczasowy obszar roboczy do tworzenia skryptów. Pamiętaj, że wpisy dodane do tej sekcji nie zostaną zapisane wraz z planem testów. Dlatego jeśli chcesz ponownie użyć tej samej konfiguracji nagrywania w przyszłości, musisz skopiować i wkleić ją w sekcji „Plan testowy”.
- Dodaj „Recording Controller” do „WorkBench”: Kliknij prawym przyciskiem myszy na „WorkBench” -> „Dodaj” -> „Logic Controller” -> „Recording Controller”
- Dodaj „HTTP (S) Test Script Recorder” do tego samego „WorkBench”: Kliknij prawym przyciskiem myszy „WorkBench” -> „Add” -> „Non-Test Elements” -> „HTTP (S) Test Script Recorder”
Na stronie konfiguracji „HTTP (S) Test Script Recorder” w „Global Settings: Port” musisz wprowadzić ten sam port, który jest określony w konfiguracji proxy przeglądarki, na przykład 8080.
Jeśli chcesz wykluczyć żądania do określonych zasobów, możesz użyć sekcji „Wzorce adresów URL do wykluczenia”. Może to być przydatne, jeśli chcesz uwzględnić tylko typy treści, których chcesz zażądać (np. * .Html, * .php itp.) Lub wykluczyć typy treści, których nie chcesz zamawiać (np. * .Jpg, * .png, * .js itp.).
Kiedy tego użyjemy? Na przykład podczas nagrywania skryptu wywołującego aplikację innej firmy lub podczas testowania skryptu po stronie serwera możesz nie chcieć pobierać zasobów, ponieważ mogą one zaśmiecać twoje testy i zużywać przepustowość, lub możesz chcieć nagrywać niektóre żądania z pewna ścieżka.
Najczęstsze wzorce wykluczeń to: „. .png „,”. .jpg „,”. .gif „,”. .css ”,„. .js ”. Możesz także łączyć różne wzory razem. Ten połączony wzorzec powinien pozbyć się wszystkich zbędnych żądań, które mogą odwrócić uwagę od ważnych: „. . (bmp | css | js | gif | ico | jpe? g | png | swf | woff) ”
- Z drugiej strony możesz naśladować pełne zachowanie przeglądarki i obejmować ładowanie wszystkich zasobów. W takim przypadku nie trzeba wykluczać wzorców adresów URL. Należy pamiętać, że przeglądarka pobiera wszystkie osadzone zasoby z żądanej strony i ma mechanizm buforowania, który może mieć wpływ na wydajność wyników.
W takim przypadku zaleca się pobranie wszystkich zasobów osadzonych w skrypcie: Kliknij prawym przyciskiem myszy „Plan testowy” -> „Dodaj” -> „Element konfiguracji” -> „Domyślne żądania HTTP” -> „Zaawansowane” -> wybierz Pole wyboru „Pobierz wszystkie osadzone zasoby”.
Aby JMeter zachowywał się bardziej jak prawdziwa przeglądarka, zaleca się dodanie „HTTP Cache Manager”, który pozwala symulować funkcje buforowania przeglądarki w testach wydajności. Kliknij prawym przyciskiem myszy „Plan testowy” -> „Dodaj” -> „Element konfiguracji” -> „Menedżer pamięci podręcznej HTTP”.
Teraz kliknij przycisk „Start” znajdujący się na dole strony „Rejestrator skryptów testowych HTTP (S)” i przejdź do przepływu pracy aplikacji internetowej, którą chcesz przetestować. Gdy wrócisz do JMeter, powinieneś zobaczyć wszystkie przechwycone żądania z przeglądarki pod „Recording Controller”.
Nagrywanie skryptów wydajności dla urządzeń mobilnych
JMeter może także służyć do rejestrowania testów wydajności urządzeń mobilnych. Mobilne nagrywanie skryptów jest bardzo podobne do nagrywania skryptów aplikacji internetowych.
Skonfiguruj JMeter
- Skonfiguruj „Szablony JMeter” zgodnie z opisem w rozdziale 1.
Skonfiguruj swój telefon komórkowy
Po przygotowaniu konfiguracji JMeter, w tym elementu JMeter „Nagrywanie skryptu testowego HTTP (S)” uruchomionego na określonym porcie, możesz skonfigurować telefon komórkowy, aby wysyłał żądanie do testowanej aplikacji internetowej za pośrednictwem serwera proxy JMeter.
- IOS :
Ustawienia -> Wi-Fi
Kliknij podłączoną sieć
Przejdź do sekcji konfiguracji „HTTP PROXY”
Kliknij kartę „Ręcznie”
Ustaw adres IP komputera, na którym działa aplikacja JMeter w „Serwer”
Ustaw port określony w „Nagrywaniu skryptu testowego HTTP (S)” w „Port”
Android:
Ustawienia -> Wi-Fi
Długie kliknięcie podłączonej sieci i kliknięcie opcji „Modyfikuj sieć”
Kliknij pole wyboru „Opcje zaawansowane”
Ustaw opcję „Proxy” na „Ręcznie”
Ustaw „Nazwę hosta proxy” jako adres IP komputera i „Port proxy”, jak określono w konfiguracji „Nagrywanie skryptu testowego HTTP (S)” w „Port”
Kliknij „Zapisz”
- Możesz teraz uruchomić aplikację na urządzeniu mobilnym. Żądania zostaną zapisane na JMeter.
Rejestrowanie ruchu HTTPS
Jeśli twoja aplikacja internetowa używa szyfrowania SSL, musisz przechwycić ruch HTTPS zamiast HTTP. Aby rejestrować ruch HTTPS za pomocą JMeter, musisz skonfigurować certyfikaty SSL.
Skonfiguruj serwer proxy SSL
- Upewnij się, że serwer proxy SSL jest skonfigurowany w taki sam sposób, jak serwer proxy HTTP:
Skonfiguruj JMeter
Rozpocznij nagrywanie skryptu za pomocą funkcji „Szablon nagrywania JMeter”, jak wyjaśniono w przykładzie „Nagrywanie skryptu za pomocą funkcji Szablon JMeter”.
Po otwarciu aplikacji internetowej zobaczysz komunikat dotyczący niezabezpieczonego połączenia. Aby kontynuować, wystarczy zaakceptować atrapę certyfikatu JMeter:
- Kliknij „Zaawansowane”
- Kliknij „Dodaj wyjątek ...”
- Odznacz „Trwale przechowuj ten wyjątek”
- Kliknij „Potwierdź wyjątek bezpieczeństwa”
- Jeśli zobaczysz „Ta strona zapewnia prawidłową, zweryfikowaną identyfikację. Nie ma potrzeby dodawania wyjątku. ” komunikat ostrzegawczy, musisz wyczyścić historię przeglądarki swojej aplikacji, w tym pliki cookie, pamięć podręczną, dane witryny w trybie offline. Następnie ponownie wykonaj te same czynności.
To podejście działa również w przypadku nagrywania skryptów mobilnych, ponieważ certyfikat JMeter musi być zainstalowany tylko na hoście, który jest używany do uruchamiania JMeter.
Nagrywanie skryptu za pomocą rozszerzenia BlazeMeter Chrome
Do tej pory omówiliśmy podstawowe sposoby rejestrowania scenariuszy testowych. Ale jednym z najszybszych i najłatwiejszych sposobów nagrywania skryptów wydajności, który jest również bezpłatny, jest użycie rozszerzenia BlazeMeter Recorder Chrome . Nagrania te można uruchomić w JMeter lub BlazeMeter.
Rozszerzenie jest tak przydatne, że pozwala nagrywać skrypty wydajności z przeglądarki bez konieczności konfigurowania serwera proxy.
Aby utworzyć nowy skrypt wydajności:
- Otwórz rejestrator z Chrome
- Wpisz nazwę testu w górnym polu
- Rozpocznij nagrywanie, klikając przycisk nagrywania w kształcie koła i wykonaj czynności internetowe, które chcesz nagrać. Wszystkie twoje prośby zostaną przechwycone. Rozszerzenie Blazemeter Chrome obsługuje także rejestrowanie ruchu HTTPS.
- Po zakończeniu nagrywania kliknij przycisk zatrzymania w kształcie kwadratu. Możesz także wstrzymać nagrywanie, a następnie wznowić je, a także edytować, w formacie .jmx lub JSON lub w chmurze.
- Eksportuj swoje nagranie - aby uruchomić test w JMeter, wyeksportuj do formatu .jmx, klikając przycisk .jmx. Aby uruchomić test w BlazeMeter, kliknij „play”.
Aby uzyskać więcej informacji, zobacz tutaj .
Nagrywanie skryptu za pomocą BadBoy
Innym przydatnym narzędziem do nagrywania innych firm jest BadBoy. Działa jednak tylko w systemie operacyjnym Windows.
Aby utworzyć nowy skrypt wydajności:
Zainstaluj tutaj BadBoy
Naciśnij przycisk nagrywania w kształcie czerwonego koła i wykonaj czynności, które chcesz uchwycić.
Wyeksportuj skrypt do JMeter - Plik -> Eksportuj do JMeter
Aby uzyskać więcej informacji, zobacz tutaj .
Korzystanie z rejestratora skryptów wydajności to świetny sposób na uniknięcie rutynowych zadań i uzyskanie najlepszych skryptów testowych. Po zarejestrowaniu skonfiguruj test do liczby użytkowników wirtualnych, którzy chcesz przetestować, a także do dodatkowych konfiguracji testu, uruchom test i przeanalizuj wyniki w celu wykrycia błędów i wąskich gardeł oraz scharakteryzowania trendów pokazujących stan twojego systemu.