Używanie właściwości użytkownika JMeter z testowaniem obciążenia platformy Azure
Z tego artykułu dowiesz się, jak skonfigurować i używać właściwości użytkownika narzędzia Apache JMeter za pomocą usługi Azure Load Testing. Dzięki właściwościom użytkownika można skonfigurować test, zachowując ustawienia testu poza skryptem testu JMeter. Przypadki użycia właściwości użytkownika obejmują:
- Chcesz użyć skryptu testowego JMX w wielu środowiskach wdrażania z różnymi punktami końcowymi aplikacji.
- Skrypt testowy musi pomieścić wiele wzorców obciążenia, takich jak testy weryfikacyjne kompilacji, szczytowe obciążenie lub testy moczenia.
- Chcesz zastąpić domyślne zachowanie JMeter, konfigurując ustawienia JMeter, takie jak format pliku wyników.
Testowanie obciążenia platformy Azure obsługuje standardowe właściwości narzędzia Apache JMeter i umożliwia przekazywanie pliku właściwości użytkownika. Można skonfigurować jeden plik właściwości użytkownika na test obciążeniowy.
Alternatywnie możesz również użyć zmiennych środowiskowych i wpisów tajnych w usłudze Azure Load Testing , aby można było konfigurować testy.
Uwaga
Testowanie obciążenia platformy Azure zastępuje określone właściwości JMeter i ignoruje wszystkie wartości określone dla tych właściwości. Dowiedz się więcej o liście właściwości JMeter, które zastąpią testy obciążeniowe platformy Azure.
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.
Dodawanie pliku właściwości użytkownika JMeter do testu obciążeniowego
Właściwości użytkownika dla skryptu testowego JMeter można zdefiniować, przekazując plik properties do testu obciążeniowego. Testowanie obciążenia platformy Azure obsługuje pojedynczy plik właściwości JMeter na test obciążeniowy. Dodatkowe pliki właściwości są ignorowane.
Poniższy fragment kodu przedstawia przykładowy plik właściwości użytkownika, który definiuje trzy właściwości użytkownika i konfiguruje jmeter.save.saveservice.thread_name
ustawienie konfiguracji:
# peak-load.properties
# User properties for testing peak load
threadCount=250
rampUpSeconds=30
durationSeconds=600
# Override default JMeter properties
jmeter.save.saveservice.thread_name=false
Aby dodać plik właściwości użytkownika do testu obciążeniowego przy użyciu witryny Azure Portal, wykonaj następujące kroki:
W witrynie Azure Portal przejdź do zasobu testowania obciążenia platformy Azure.
W okienku po lewej stronie wybierz pozycję Testy , aby wyświetlić listę testów.
Wybierz test z listy, zaznaczając pole wyboru, a następnie wybierz pozycję Edytuj. Alternatywnie wybierz pozycję Utwórz test, aby utworzyć nowy test obciążeniowy.
Wybierz kartę Plan testów.
Wybierz plik właściwości z komputera, a następnie wybierz pozycję Przekaż , aby przekazać plik na platformę Azure.
Wybierz pozycję Właściwości użytkownika na liście rozwijanej Istotność pliku.
Dla testu obciążeniowego można wybrać tylko jeden plik jako plik właściwości użytkownika.
Wybierz pozycję Zastosuj , aby zmodyfikować test, lub Przejrzyj i utwórz, a następnie utwórz , aby utworzyć nowy test.
Właściwości odwołania w JMeter
Testowanie obciążenia platformy Azure obsługuje wbudowaną funkcję Apache JMeter, aby odwoływać się do właściwości użytkownika w skrypcie testowym JMeter (JMX). Za pomocą funkcji __property lub __P można pobrać wartości właściwości z przekazanego wcześniej pliku właściwości.
Poniższy fragment kodu przedstawia przykład sposobu odwołowania się do właściwości w pliku JMX:
<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Test home page" enabled="true">
<stringProp name="ThreadGroup.on_sample_error">continue</stringProp>
<elementProp name="ThreadGroup.main_controller" elementType="LoopController" guiclass="LoopControlPanel" testclass="LoopController" testname="Loop Controller" enabled="true">
<boolProp name="LoopController.continue_forever">false</boolProp>
<intProp name="LoopController.loops">-1</intProp>
</elementProp>
<stringProp name="ThreadGroup.num_threads">${__P(threadCount,1)}</stringProp>
<stringProp name="ThreadGroup.ramp_time">${__P(rampUpSeconds,1)}</stringProp>
<boolProp name="ThreadGroup.scheduler">true</boolProp>
<stringProp name="ThreadGroup.duration">${__P(durationSeconds,30)}</stringProp>
<stringProp name="ThreadGroup.delay"></stringProp>
<boolProp name="ThreadGroup.same_user_on_next_iteration">true</boolProp>
</ThreadGroup>
Alternatywnie można również określić właściwości w interfejsie użytkownika JMeter. Na poniższej ilustracji przedstawiono sposób konfigurowania grupy wątków JMeter za pomocą właściwości:
Dzienniki błędów JMeter można pobrać, aby rozwiązać problemy z błędami podczas testu obciążeniowego.
Następne kroki
- Dowiedz się więcej o właściwościach JMeter, które zastępują testy obciążeniowe platformy Azure.
- Dowiedz się więcej na temat parametryzacji testu obciążeniowego przy użyciu zmiennych środowiskowych i wpisów tajnych.
- Dowiedz się więcej o diagnozowaniu zakończonych niepowodzeniem testów obciążeniowych.