Udostępnij za pośrednictwem


Definiowanie kryteriów niepowodzenia testów obciążeniowych przy użyciu testowania obciążenia platformy Azure

Z tego artykułu dowiesz się, jak zdefiniować kryteria niepowodzenia lub kryteria automatycznego zatrzymywania testów obciążeniowych przy użyciu usługi Azure Load Testing. Kryteria niepowodzenia umożliwiają zdefiniowanie oczekiwań dotyczących wydajności i jakości aplikacji pod obciążeniem. Testowanie obciążenia platformy Azure obsługuje różne metryki klienta służące do definiowania kryteriów niepowodzenia, takich jak szybkość błędów lub czas odpowiedzi. Kryteria automatycznego zatrzymywania umożliwiają automatyczne zatrzymanie testu obciążeniowego, gdy współczynnik błędów przekroczy określony próg.

Wymagania wstępne

  • Konto platformy Azure z aktywną subskrypcją. Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.
  • Zasób testowania obciążenia platformy Azure. Jeśli musisz utworzyć zasób usługi Azure Load Testing, zobacz przewodnik Szybki start Tworzenie i uruchamianie testu obciążeniowego.

Kryteria niepowodzenia testu obciążeniowego

Kryteria niepowodzenia testu obciążeniowego to warunki metryk po stronie klienta, które powinny spełniać test. Należy zdefiniować kryteria testu na poziomie testu obciążeniowego w usłudze Azure Load Testing. Test obciążeniowy może mieć co najmniej jedno kryterium testu. Jeśli co najmniej jedno z kryteriów testu ma wartość true, test obciążeniowy pobiera stan niepowodzenia .

Kryteria testu można zdefiniować na dwóch poziomach. Test obciążeniowy może łączyć kryteria na różnych poziomach.

  • Na poziomie testu obciążeniowego. Aby na przykład upewnić się, że łączna wartość procentowa błędu nie przekracza progu.
  • Na poziomie żądania JMeter (próbkator JMeter). Można na przykład określić próg czasu odpowiedzi żądania getProducts , ale zignorować czas odpowiedzi żądania logowania .

Można zdefiniować maksymalnie 50 kryteriów testu obciążeniowego. Jeśli istnieje wiele kryteriów dla tej samej metryki klienta, zostanie użyte kryterium z najniższą wartością progową.

Struktura kryteriów niepowodzenia

Format kryteriów niepowodzenia w usłudze Azure Load Testing jest zgodny z instrukcją warunkową dla obsługiwanej metryki. Na przykład upewnij się, że średnia liczba żądań na sekundę jest większa niż 500.

Kryteria niepowodzenia mają następującą strukturę:

  • Kryteria testu na poziomie testu obciążeniowego: Aggregate_function (client_metric) condition threshold.
  • Kryteria testu stosowane do określonych żądań JMeter: Request: Aggregate_function (client_metric) condition threshold.

W poniższej tabeli opisano różne składniki:

Parametr Opis
Client metric Wymagane. Metryka klienta, dla której należy zastosować warunek.
Aggregate function Wymagany. Funkcja agregacji, która ma zostać zastosowana do metryki klienta.
Condition Wymagany. Operator porównania, taki jak greater than, lub less than.
Threshold Wymagany. Wartość liczbowa do porównania z metryki klienta.
Request Opcjonalny. Nazwa przykładowego skryptu JMeter, do którego ma zastosowanie kryterium. Jeśli nie określisz nazwy żądania, kryterium ma zastosowanie do agregacji wszystkich żądań w skry skryptzie.
Nie dołączaj żadnych danych osobowych do nazwy przykładowego skryptu JMeter. Nazwy przykładów są wyświetlane na pulpicie nawigacyjnym wyników testowania obciążenia platformy Azure.

Obsługiwane metryki klienta dla kryteriów niepowodzenia

Testowanie obciążenia platformy Azure obsługuje następujące metryki klienta:

Metric Funkcja agregacji Threshold Warunek opis
response_time_ms avg (średnia)
min (minimum)
max (maksimum)
pxx (percentyl), xx może być 50, 75, 90, 95, 96, 97, 98, 99, 999 i 9999
Wartość całkowita reprezentująca liczbę milisekund (ms). > (większe niż)
< (mniejsze niż)
Czas odpowiedzi lub czas, który upłynął, w milisekundach. Dowiedz się więcej o upływie czasu w dokumentacji narzędzia Apache JMeter.
latency avg (średnia)
min (minimum)
max (maksimum)
pxx (percentyl), xx może być 50, 90, 95, 99
Wartość całkowita reprezentująca liczbę milisekund (ms). > (większe niż)
< (mniejsze niż)
Opóźnienie ( w milisekundach). Dowiedz się więcej o opóźnieniu w dokumentacji narzędzia Apache JMeter.
error percentage Wartość liczbowa w zakresie od 0 do 100, reprezentująca wartość procentową. > (większe niż) Procent żądań, które zakończyły się niepowodzeniem.
requests_per_sec avg (średnia) Wartość liczbowa z maksymalnie dwoma miejscami dziesiętnymi. > (większe niż)
< (mniejsze niż)
Liczba żądań na sekundę.
requests count Wartość całkowita. > (większe niż)
< (mniejsze niż)
Łączna liczba żądań.

Definiowanie kryteriów niepowodzenia testu obciążeniowego

W tej sekcji skonfigurujesz kryteria testu obciążeniowego w witrynie Azure Portal.

  1. W witrynie Azure Portal przejdź do zasobu testowania obciążenia platformy Azure.

  2. W okienku po lewej stronie wybierz pozycję Testy , aby wyświetlić listę testów obciążeniowych.

  3. Wybierz test obciążeniowy z listy, a następnie wybierz pozycję Edytuj.

    Zrzut ekranu przedstawiający listę testów dla zasobu testowania obciążenia platformy Azure w witrynie Azure Portal z wyróżnionym przyciskiem

  4. W okienku Kryteria testu wypełnij wartości Metryka, Funkcja agregacji, Warunek i Próg dla testu.

    Zrzut ekranu przedstawiający okienko

    Opcjonalnie wprowadź informacje o nazwie żądania, aby dodać kryterium testu dla określonego żądania JMeter. Wartość powinna być zgodna z nazwą próbkatora JMeter w pliku JMX.

    Zrzut ekranu przedstawiający interfejs użytkownika JMeter z wyróżnioną nazwą żądania.

  5. Wybierz pozycję Zastosuj , aby zapisać zmiany.

    Po uruchomieniu testu obciążeniowego usługa Azure Load Testing używa kryteriów testu w celu określenia stanu przebiegu testu obciążeniowego.

  6. Uruchom test i wyświetl stan na pulpicie nawigacyjnym testu obciążeniowego.

    Na pulpicie nawigacyjnym są wyświetlane wszystkie kryteria testu i ich stan. Ogólny stan testu nie powiedzie się, jeśli spełniono co najmniej jedno kryterium.

    Zrzut ekranu przedstawiający kryteria testu na pulpicie nawigacyjnym testu obciążeniowego.

Konfiguracja automatycznego zatrzymywania

Testowanie obciążenia platformy Azure automatycznie zatrzymuje test obciążeniowy, jeśli wartość procentowa błędu przekracza określony próg dla określonego przedziału czasu. Automatyczne zatrzymywanie zabezpieczeń przed testami zakończonymi niepowodzeniem powoduje dalsze naliczanie kosztów, na przykład z powodu niepoprawnie skonfigurowanego adresu URL punktu końcowego.

W konfiguracji testu obciążeniowego można włączyć lub wyłączyć funkcję automatycznego zatrzymywania i skonfigurować próg procentowy błędu i przedział czasu. Domyślnie testowanie obciążenia platformy Azure automatycznie zatrzymuje test obciążeniowy, który ma wartość procentową błędu, która wynosi co najmniej 90% w dowolnym 60-sekundowym przedziale czasu.

Możesz użyć funkcji automatycznego zatrzymywania testowania obciążenia platformy Azure w połączeniu z odbiornikiem AutoStop w skryscie JMeter. Test obciążeniowy zostanie automatycznie zatrzymany, gdy zostanie spełniony jeden z kryteriów w konfiguracji automatycznego zatrzymywania lub odbiornik autostopu JMeter.

Uwaga

Jeśli wyłączysz automatyczne zatrzymywanie testu obciążeniowego, możesz ponieść koszty nawet wtedy, gdy test obciążeniowy jest niepoprawnie skonfigurowany.

Aby skonfigurować automatyczne zatrzymywanie testu obciążeniowego w witrynie Azure Portal:

  1. W witrynie Azure Portal przejdź do zasobu testowania obciążenia platformy Azure.

  2. W okienku po lewej stronie wybierz pozycję Testy , aby wyświetlić listę testów obciążeniowych.

  3. Wybierz test obciążeniowy z listy, a następnie wybierz pozycję Edytuj. Alternatywnie wybierz pozycję Create Upload a JMeter script (Utwórz>skrypt JMeter), aby utworzyć nowy test.

  4. Przejdź do karty Kryteria testu, aby skonfigurować funkcję automatycznego zatrzymywania.

    • Włącz lub wyłącz automatyczne zatrzymywanie testu obciążeniowego przy użyciu kontrolki testu automatycznego zatrzymywania.

    • Jeśli włączysz automatyczne zatrzymywanie, możesz wypełnić pola Procent błędów i Przedział czasu . Określ przedział czasu w sekundach.

      Zrzut ekranu przedstawiający okienko

  5. Wybierz pozycję Zastosuj lub Przejrzyj i utwórz , jeśli tworzysz nowy test obciążeniowy, aby zapisać zmiany.

Następne kroki