Performance Testing in der Cloud ist kein Luxus mehr, sondern Standard. Microsoft Azure Load Testing kombiniert die Skalierbarkeit der Azure-Cloud mit der etablierten Engine von Apache JMeter und integriert sich nativ in Azure DevOps. Wer in Microsoft-Stacks unterwegs ist, kann damit hundertausende virtuelle Nutzer simulieren, ohne eigenes Lasttest-Cluster aufzubauen.
Dieser Artikel begleitet das gleichnamige Qytera-Webinar mit Matthias Eggert (Sprecher) und Markus Thaler (Moderator). Sie finden hier die komplette Aufzeichnung, eine Praxis-Einführung in Azure Load Testing mit JMeter und die Anbindung an Azure DevOps Pipelines.
Inhaltsverzeichnis
Was ist Azure Load Testing?
Azure Load Testing ist ein verwalteter Dienst von Microsoft Azure, der Apache JMeter als Engine im Hintergrund einsetzt. Anstatt JMeter selbst auf eigenen Workern oder EC2-Instanzen zu betreiben, hochladen Sie Ihren JMX-Test-Plan in Azure und lassen den Dienst die Worker-Provisionierung, Skalierung und Ergebnis-Aufbereitung übernehmen.
Drei Eigenschaften unterscheiden Azure Load Testing von Self-Hosted-JMeter:
- Cloud-native Skalierung. Pro Test definieren Sie die Engine-Anzahl, Azure provisioniert die Worker dynamisch. Hunderttausende virtuelle Nutzer sind möglich, ohne dass Sie selbst Kapazität planen.
- Eingebaute Metriken-Visualisierung. Während des Laufs sehen Sie Response Time, Requests pro Sekunde und Fehlerrate live im Azure-Portal. Kein Grafana-Setup nötig.
- Azure-DevOps-Integration. Über einen Pipeline-Task triggern Sie Last-Tests aus Build-Pipelines. Ergebnis-Schwellenwerte können den Build failen lassen.
Für eine vollständige Einordnung in den Tool-Markt siehe den Performance-Testing-Tools-Vergleich 2026. Für JMeter selbst als zugrunde liegende Engine ist der Praxis-Artikel Apache JMeter Lasttest der natürliche Einstieg.
Setup: Azure Load Testing in Microsoft Azure
Voraussetzung: ein Azure-Abonnement und eine Resource Group. Im Azure-Portal legen Sie eine neue Ressource vom Typ „Azure Load Testing" an und wählen Region plus Pricing-Tier. Der Dienst läuft als Pay-per-Use, abgerechnet nach Test-Engine-Stunden plus Virtual-User-Stunden.
Nach der Provisionierung haben Sie eine „Load Testing Resource", in der Sie Test-Definitionen anlegen. Jede Test-Definition enthält ein JMX-Skript, optionale CSV-Daten-Dateien und Parameter wie Engine-Anzahl, virtuelle User pro Engine und Test-Dauer.
JMeter-Skript in Azure Load Testing einbinden
Wer JMeter lokal kennt, kann den vorhandenen Test-Plan direkt nutzen. Hochladen, Parameter setzen, ausführen. Was Sie wissen sollten:
- JMX-Datei wird unverändert übernommen. Listener im Test-Plan sind irrelevant, Azure liefert eigene Metriken.
- CSV-Daten-Dateien als zusätzliche Uploads. Mehrere CSV-Dateien sind erlaubt, jede wird im Worker-Container verfügbar.
- Parameter via Variablen. User Defined Variables im JMX überschreiben Sie beim Test-Run über die Azure-Portal-Oberfläche oder via REST-API.
- Pass/Fail-Kriterien. Im Portal definieren Sie Schwellenwerte (z.B. „95% Response Time unter 500 ms"), die den Test als bestanden oder fehlgeschlagen markieren.
Wer JMeter im klassischen Setup mit Distributed Mode betreibt und überlegt zu Azure zu wechseln, findet die wichtigsten Unterschiede im JMeter-Lasttest-Praxis-Artikel. Der Unterschied: Self-Hosted gibt mehr Kontrolle, Azure spart Cluster-Management.
Integration mit Azure DevOps Pipelines
Der eigentliche Mehrwert liegt in der Pipeline-Integration. Im Azure-DevOps-Marketplace gibt es einen offiziellen Task „Azure Load Testing", den Sie in YAML-Pipelines einbinden:
trigger:
branches: { include: [ main ] }
pool: { vmImage: 'ubuntu-latest' }
steps:
- task: AzureLoadTest@1
inputs:
azureSubscription: 'my-azure-service-connection'
loadTestConfigFile: 'tests/loadtest.yaml'
resourceGroup: 'rg-perftest'
loadTestResource: 'mylt-resource'
- publish: $(System.DefaultWorkingDirectory)/loadTest
artifact: results
Die Datei loadtest.yaml referenziert das JMX-Skript, definiert virtuelle User, Dauer und Pass/Fail-Kriterien. Der Task lädt den Test in Azure, triggert den Run und wartet auf das Ergebnis. Bei Schwellenwert-Verletzungen failed der Build.
Für die Grundlagen einer CI/CD-Pipeline ist unser CI/CD-Artikel die Referenz. Wenn Ihr Team eher Jenkins als Azure DevOps nutzt, finden Sie die analoge Integration im Jenkins-CI/CD-Artikel.
Webinar-Aufzeichnung
Themenübersicht
Das Webinar deckt diese Themen ab:
- Vorstellung von Apache JMeter als Werkzeug
- Wie man mit JMeter skaliert (Architektur)
- Erklärung von Azure Load Testing
- Hands-on Einblicke mit Azure Load Testing
- Single-Page-Webseite testen
- Klickstrecke mit Apache JMeter modellieren
- Einbindung in Azure DevOps Pipeline
Sprecher und Moderator
Matthias Eggert (Sprecher) war viele Jahre in der Automobilbranche als Softwareintegrator, Softwareentwickler und DevOps-Engineer tätig. Heute arbeitet er als DevOps-Engineer bei Qytera und beschäftigt sich mit modernen Arbeitsweisen und Technologietrends wie Cloud-basierten Softwaretest-Lösungen.
Markus Thaler (Moderator) war 22 Jahre in der Commerzbank tätig, davon mehr als 10 Jahre für Teststandards, Testwerkzeuge und Testautomatisierung in zentraler Funktion. Nach einer Zwischenstation im Testinfrastrukturmanagement wirkte er acht Jahre als Testmanager in der Risikofunktion. Vor der Commerzbank sammelte er Testerfahrung bei Lufthansa, Siemens, Nestlé und der DZ-Bank. Heute ist er Senior Testmanager und Testarchitekt bei Qytera.
Zielgruppe
Das Webinar richtet sich an:
- Entwickler und Entwicklerinnen
- Performancetester und Performancetesterinnen
- DevOps-Engineers
- Testmanager und Testmanagerinnen
- Testautomatisierer und Testautomatisiererinnen
Fazit
Performance Testing ist entscheidend für die Optimierung der Benutzererfahrung einer Website. Die Kombination von Apache JMeter und Cloud-basierten Lösungen wie Microsoft Azure Load Testing ermöglicht umfassende und realistische Testszenarien, die für die kontinuierliche Verbesserung der Website-Leistung unverzichtbar sind.
Tools wechseln. Qualitätsdenken bleibt. Ob Sie am Ende Azure Load Testing, Self-Hosted JMeter oder eine andere Cloud-Plattform wie unsere QLoad-Lösung einsetzen, hängt von Ihrem Stack und Ihrer DevOps-Strategie ab. Was nicht verhandelbar ist: Performance-Tests gehören in die Pipeline, automatisiert und reproduzierbar.
Für die Grundlagen lesen Sie den Performance-Testing-Pillar. Für die konkrete Tool-Auswahl siehe den Performance-Testing-Tools-Vergleich 2026. Für JMeter im Self-Hosted-Setup ist der JMeter-Lasttest-Praxis-Artikel die Vertiefung.
Häufige Fragen (FAQ)
Was ist Azure Load Testing?
Azure Load Testing ist ein verwalteter Microsoft-Azure-Dienst, der Apache JMeter als Engine nutzt. Sie laden einen JMX-Test-Plan hoch, definieren virtuelle User und Dauer, Azure provisioniert die Worker automatisch. Vorteil gegenüber Self-Hosted JMeter: kein Cluster-Management, native Azure-DevOps-Integration und eingebaute Metriken-Visualisierung.
Welche JMeter-Version unterstützt Azure Load Testing?
Azure Load Testing unterstützt Apache JMeter 5.x. Bestehende JMX-Skripte aus lokalen Setups lassen sich in der Regel ohne Anpassungen hochladen. Listeners im Test-Plan sind irrelevant, da Azure eigene Metriken liefert.
Wie integriere ich Azure Load Testing in Azure DevOps?
Über den offiziellen Pipeline-Task „AzureLoadTest@1" aus dem Azure-DevOps-Marketplace. In der YAML-Pipeline referenzieren Sie eine Konfigurationsdatei (loadtest.yaml), die das JMX-Skript, virtuelle User und Pass/Fail-Kriterien enthält. Bei Schwellenwert-Verletzungen failed der Build automatisch.
Was kostet Azure Load Testing?
Pay-per-Use, abgerechnet nach Test-Engine-Stunden und Virtual-User-Stunden. Konkrete Preise variieren nach Azure-Region und Tier. Microsoft veröffentlicht die aktuellen Preise auf der Azure-Pricing-Seite. Faustregel: für sporadische Tests deutlich günstiger als ein dauerhaft betriebenes Self-Hosted-Cluster.
Azure Load Testing oder Self-Hosted JMeter?
Azure Load Testing: weniger Cluster-Management, native Azure-DevOps-Integration, schnellerer Start. Self-Hosted JMeter: mehr Kontrolle über die Worker-Konfiguration, niedrigere Laufkosten bei häufigen Tests, Tool-Vendor-Unabhängigkeit. Bei Microsoft-Stacks und sporadischen Tests ist Azure Load Testing die natürliche Wahl. Bei häufigen Tests in Multi-Cloud-Setups bleibt Self-Hosted attraktiv. Details im JMeter-Lasttest-Praxis-Artikel.
Kann ich Azure Load Testing mit Jenkins statt Azure DevOps verwenden?
Ja, Azure Load Testing hat eine REST-API. Damit lassen sich Test-Runs aus jeder beliebigen Pipeline triggern, auch aus Jenkins. Der offizielle Pipeline-Task existiert nur für Azure DevOps; für Jenkins schreiben Sie einen Shell-Step, der via curl die Azure-API anspricht. Details zur Jenkins-Integration finden Sie im Jenkins-CI/CD-Artikel.