Definieren von Fehlerkriterien für Auslastungstests mithilfe von Azure Load Testing
In diesem Artikel erfahren Sie, wie Sie Fehlerkriterien oder Kriterien zum automatischen Beenden für Ihre Auslastungstests mit Azure Load Testing definieren. Fehlerkriterien ermöglichen Ihnen die Definition von Leistungs- und Qualitätserwartungen an Ihre Anwendung unter Last. Azure Load Testing unterstützt verschiedene Clientmetriken zum Definieren von Fehlerkriterien, z. B. Fehlerrate oder Antwortzeit. Mithilfe der Kriterien zum automatischen Beenden können Sie Den Auslastungstest automatisch beenden, wenn die Fehlerrate einen bestimmten Schwellenwert überschreitet.
Voraussetzungen
- Ein Azure-Konto mit einem aktiven Abonnement. Wenn Sie kein Azure-Abonnement haben, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.
- Eine Azure Load Testing-Ressource. Wenn Sie eine Azure Load Testing-Ressource erstellen müssen, lesen Sie den Schnellstart Erstellen und Ausführen eines Auslastungstests.
Fehlerkriterien für Auslastungstests
Auslastungstest-Fehlerkriterien sind Bedingungen für clientseitige Metriken, die der Test erfüllen soll. Sie definieren Testkriterien in Azure Load Testing auf Ebene des Auslastungstests. Ein Auslastungstest kann mehrere Testkriterien aufweisen. Wenn mindestens eines der Testkriterien als TRUE ausgewertet wird, erhält der Auslastungstest den Status Fehler.
Sie können Testkriterien auf zwei Ebenen definieren. In einem Auslastungstest können Kriterien auf den unterschiedlichen Ebenen kombiniert werden.
- Auf Ebene des Auslastungstests. Hier kann beispielsweise sichergestellt werden, dass der Gesamtfehleranteil einen Schwellenwert nicht überschreitet.
- Auf Ebene der JMeter-Anforderungen (JMeter-Sampler). Sie könnten beispielsweise einen Schwellenwert für die Antwortzeit der getProducts-Anforderung angeben, aber die Antwortzeit der Anmeldeanforderung außer Acht lassen.
Sie können maximal 10 Testkriterien für einen Auslastungstest definieren. Wenn es mehrere Kriterien für dieselbe Clientmetrik gibt, wird das Kriterium mit dem niedrigsten Schwellenwert verwendet.
Struktur von Fehlerkriterien
Das Format von Fehlerkriterien in Azure Load Testing entspricht dem einer bedingten Anweisung für eine unterstützte Metrik. Stellen Sie beispielsweise sicher, dass die durchschnittliche Anzahl von Anforderungen pro Sekunde größer als 500 ist.
Fehlerkriterien weisen die folgende Struktur auf:
- Testkriterien auf Ebene des Auslastungstests:
Aggregate_function (client_metric) condition threshold
. - Auf bestimmte JMeter-Anforderungen angewandte Testkriterien:
Request: Aggregate_function (client_metric) condition threshold
.
In der folgenden Tabelle werden die verschiedenen Komponenten beschrieben:
Parameter | BESCHREIBUNG |
---|---|
Client metric |
Erforderlich. Die Clientmetrik, auf die die Kriterien angewandt werden sollen. |
Aggregate function |
Erforderlich. Die Aggregatfunktion, die auf die Clientmetrik angewendet werden soll. |
Condition |
Erforderlich. Der Vergleichsoperator, z. B. greater than oder less than . |
Threshold |
Erforderlich. Der numerische Wert, der mit der Clientmetrik verglichen werden soll. |
Request |
Optional. Der Name des Samplers im JMeter-Skript, auf das das Kriterium angewendet wird. Wenn Sie keinen Anforderungsnamen angeben, gilt das Kriterium für das Aggregat aller Anforderungen im Skript. Fügen Sie in Ihrem JMeter-Skript keine personenbezogenen Daten in den Samplernamen ein. Die Samplernamen werden in den Azure Load Testing-Ergebnissen Dashboard angezeigt. |
Unterstützte Clientmetriken für Fehlerkriterien
Azure Load Testing unterstützt die folgenden Clientmetriken:
Metrik | Aggregate-Funktion | Schwellenwert | Bedingung | Beschreibung |
---|---|---|---|---|
response_time_ms |
avg (Durchschnitt)min (Minimum)max (Maximum)pxx (Quantil), xx kann 50, 90, 95, 99 sein |
Integerwert, der die Anzahl der Millisekunden (ms) darstellt. | > (größer als)< (kleiner als) |
Antwortzeit oder verstrichene Zeit in Millisekunden. Erfahren Sie mehr über verstrichene Zeit in der Apache JMeter-Dokumentation. |
latency |
avg (Durchschnitt)min (Minimum)max (Maximum)pxx (Quantil), xx kann 50, 90, 95, 99 sein |
Integerwert, der die Anzahl der Millisekunden (ms) darstellt. | > (größer als)< (kleiner als) |
Wartezeit in Millisekunden. Erfahren Sie mehr über Wartezeit in der Apache JMeter-Dokumentation. |
error |
percentage |
Numerischer Wert im Bereich von 0 bis 100, der einen Prozentsatz darstellt. | > (größer als) |
Prozentanteil der fehlerhaften Anforderungen. |
requests_per_sec |
avg (Durchschnitt) |
Numerischer Wert mit bis zu zwei Dezimalstellen. | > (größer als)< (kleiner als) |
Anzahl der Anforderungen pro Sekunde. |
requests |
count |
Wert für ganze Zahl. | > (größer als)< (kleiner als) |
Gesamtanzahl der Anforderungen. |
Definieren von Fehlerkriterien für Auslastungstests
In diesem Abschnitt erfahren Sie, wie Sie Testkriterien für einen Auslastungstest im Azure-Portal konfigurieren.
Navigieren Sie im Azure-Portal zu Ihrer Azure Load Testing-Ressource.
Wählen Sie im linken Bereich Tests aus, um die Liste der Auslastungstests anzuzeigen.
Wählen Sie in der Liste Ihren Auslastungstest und dann Bearbeiten aus.
Füllen Sie im Bereich Testkriterien die Werte Metrik, Aggregatfunktion, Bedingung und Schwellenwert für Ihren Test aus.
Geben Sie optional die Informationen für die Anforderungsnamen ein, um ein Testkriterium für eine bestimmte JMeter-Anforderung hinzuzufügen. Der Wert sollte dem Namen des JMeter-Samplers in der JMX-Datei entsprechen.
Wählen Sie Übernehmen aus, um die Änderungen zu speichern.
Wenn Sie jetzt den Auslastungstest ausführen, ermittelt Azure Load Testing den Ausführungsstatus des Auslastungstests über die Testkriterien.
Führen Sie den Test aus, und zeigen Sie den Status im Dashboard für den Auslastungstest an.
Auf dem Dashboard werden die einzelnen Testkriterien mit dem jeweiligen Status angezeigt. Der allgemeine Test status ist fehlgeschlagen, wenn mindestens ein Kriterium erfüllt wurde.
Konfiguration für automatisches Beenden
Azure Load Testing beendet automatisch einen Auslastungstest, wenn der Fehlerprozentsatz einen bestimmten Schwellenwert für ein bestimmtes Zeitfenster überschreitet. Das automatische Beenden schützt Sie davor, dass Tests, bei denen Fehler auftreten, weitere Kosten verursachen, z. B. aufgrund einer falsch konfigurierten Endpunkt-URL.
In der Auslastungstestkonfiguration können Sie die Funktion zum automatischen Beenden aktivieren oder deaktivieren und den Schwellenwert und das Zeitfenster für Den Fehlerprozentsatz konfigurieren. Standardmäßig beendet Azure Load Testing automatisch einen Auslastungstest, der während eines 60-Sekunden-Zeitfensters einen Fehlerprozentsatz von mindestens 90 % aufweist.
Sie können die Automatische Beendigungsfunktion von Azure Load Testing in Kombination mit einem AutoStop-Listener in Ihrem JMeter-Skript verwenden. Der Auslastungstest wird automatisch beendet, wenn eines der Kriterien in der Konfiguration für automatisches Beenden oder im JMeter AutoStop-Listener erfüllt ist.
Achtung
Wenn Sie das automatische Beenden für Ihren Auslastungstest deaktivieren, können Kosten anfallen, auch wenn der Auslastungstest falsch konfiguriert ist.
So konfigurieren Sie das automatische Beenden für Ihren Auslastungstest im Azure-Portal:
Navigieren Sie im Azure-Portal zu Ihrer Azure Load Testing-Ressource.
Wählen Sie im linken Bereich Tests aus, um die Liste der Auslastungstests anzuzeigen.
Wählen Sie in der Liste Ihren Auslastungstest und dann Bearbeiten aus. Wählen Sie alternativ Create Create>Upload a JMeter script (JMeter-Skript hochladen ) aus, um einen neuen Test zu erstellen.
Wechseln Sie zur Registerkarte Testkriterien , um die Funktion zum automatischen Beenden zu konfigurieren.
Aktivieren oder deaktivieren Sie das automatische Beenden des Auslastungstests mithilfe des Teststeuerelements für automatisches Beenden .
Wenn Sie das automatische Beenden aktivieren, können Sie die Felder Fehlerprozentsatz und Zeitfenster ausfüllen. Geben Sie das Zeitfenster in Sekunden an.
Wählen Sie Anwenden oder Überprüfen + erstellen aus, wenn Sie einen neuen Auslastungstest erstellen, um die Änderungen zu speichern.
Nächste Schritte
Informationen zum Parametrisieren eines Auslastungstests mithilfe von Geheimnissen finden Sie unter Parametrisieren eines Auslastungstests.
Informationen zur Automatisierung von Leistungstests finden Sie unter Konfigurieren von automatisierten Leistungstests.