Azure Load Testing

24.08.2022

Mit Load Testing bietet Microsoft auf Azure einen Service zur Durchführung von Lasttests und Durchführungen von Simulation bezüglich App-Leistung, Skalierbarkeit und Kapazität.

Aufgesetzt ist das Ganze durch Apache JMeter, so dass auch bereits vorhandene Scripts problemlos migriert und ausgeführt werden können.

Setup

Wie in Azure bekannt kann die Ressource als „Azure Load Testing (Preview)“ ausgewählt und angelegt werden. Im Menü hat man nun die Möglichkeit einen Test auszuführen oder über JMeter Scripts Tests anzulegen

load_testing_1
Eigene Grafik

Quick Test

Wählt man einen schnellen Test aus kann die Anzahl der virtuellen Nutzer (=Anzahl Zugriffe) und die Länge des Tests ausgewählt werden

load_testing_2
Eigene Grafik

Anschließend wird der Test gestartet und man bekommt direkt eine Übersicht über den Testlauf.

load_testing_3
Eigene Grafik

Nach der Durchführung des Tests erhält man eine Übersicht über die Last und entsprechenden Response Zeiten:

load_testing_4
Eigene Grafik

(Info) In diesem Fall wurden für den Test 5 virtuelle Nutzer 2 Minuten lang mit 10 Requests konfiguriert

load_testing_5
Eigene Grafik

JMeter Script

Nutzt man die JMeter-konfiguration können vorhandene JMeter scripts (xml) hochgeladen werden. Nach dem Upload der Testkonfiguration kann die Last zusätzlich über das Menü konfiguriert werden.

load_testing_6
Eigene Grafik

Im nächsten Schritt lassen sich die Kriterien für die Tests definieren. So kann zum Beispiel die Maximale Response time oder ein Schwellwert für fehlerhafte Requests festgelegt werden.

load_testing_7
Eigene Grafik

Zusätzlich zu den definierten Tests lassen sich noch Services verknüpfen um die von Application Insights bekannten Parameter zur Service Prüfung zu überwachen.

load_testing_8
Eigene Grafik

CI/CI Integration

Über yaml Konfigurationen lassen sich die JMeter Scripts auch aus einer Azure DevOps Pipeline oder über GitHub Actions triggern. Vereinfacht gesagt wird hier die Verbindung über ein Service Principal hergestellt und über entsprechende Task werden die Konfiguration und Parameter übergeben.

Kosten

Ausgeschrieben sind die kosten aktuell mit 9,81€ pro Monat. Bei diesem Preis sind 50 Virtual User Hours (VUH), welche für die meisten UseCases kleinerer Anwendungen ausreichen.

Mit dem Basispreis lässt sich zum Beispiel ein täglicher Test mit 10 Benutzern und 1 Minute paralleler Zugriff simulieren.

load_testing_8
Eigene Grafik

Für umfangreichere Tests werden bis 9950 Stunden €0,149 pro zusätzlicher VUH fällig. Darüber hinaus fallen €0,075 je zusätzlicher VUH an.

So werden zum Beispiel für tägliche Test mit 1000 Benutzern und 1 Minute paralleler Zugriff knapp 80 € fällig.

load_testing_9
Eigene Grafik

Fazit

Mit Azure Load Testing stellt Microsoft einen wirklich einfachen Cloud Service für Lasttests zur Verfügung. Über die Oberfläche lassen sich aktuell noch keine parametrisierten Requests abbilden, weshalb für spezifische  und detaillierte Tests auf JMeter Scripts zurückgegriffen werden muss. Ein Datum, wann der Service von Preview auf Release umgestellt wird wurde von Microsoft bisher noch nicht veröffentlicht.

 

Quellen: 

https://docs.microsoft.com/en-us/azure/load-testing/overview-what-is-azure-load-testing

https://azure.microsoft.com/en-us/pricing/calculator/

https://zimmergren.net/using-the-azure-load-testing-service/ 

Zurück zur Übersicht

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*