Suchen

Eigenentwicklung von Metaways stresst Software via Web Automatisierte Last- und Funktionstests in der Amazon-Cloud

| Autor / Redakteur: Lars Reimann und Marc Heisterkamp* / Elke Witmer-Goßner

Mit Hilfe von Amazon-Cloud-Technologien und einer Kombination aus Software-Lösungen lassen sich Last- und Funktionstests von Applikationen weitgehend automatisieren. Ergebnis: Die Tests können in wesentlich höherer Frequenz durchgeführt werden und es fallen deutlich weniger Kosten an.

Firmen zum Thema

Metaways nutzt die Cloud für automatisierte Last- und Funktionstests von Software, was Unternehmen viel Zeit und Geld spart.
Metaways nutzt die Cloud für automatisierte Last- und Funktionstests von Software, was Unternehmen viel Zeit und Geld spart.
(Bild: VBM-Archiv)

Bei Last- und Funktionstests von Software-Anwendungen ergeben sich oft zwei grundlegende Probleme. Zum einen sind häufig die nötigen Hardware-Ressourcen nicht vorhanden oder können nicht freigemacht werden. Zum anderen werden solche Tests in aller Regel manuell durchgeführt. Das ist naturgemäß äußerst aufwändig und zeitintensiv, was hohe Kosten verursacht. Der IT-Dienstleister Metaways hat deshalb eine Lösung entwickelt, die Last- und Funktionstests weitgehend automatisiert und dazu die Amazon-Cloud-Technologie nutzt. Der Hintergrund: Die Amazon Web Services (AWS) bieten nahezu unbegrenzte Ressourcen, die binnen weniger Minuten einsatzbereit sind. Die Abrechnung kann dabei nach Zeit beziehungsweise Verbrauch erfolgen, wodurch eine gute Kostenkontrolle möglich ist.

Der erste Schritt – die Erstellung des Testplans – muss dabei allerdings zwangsläufig manuell erfolgen. Da alle Applikationen, Datenbanken, Internetseiten und Web-Shops individuell gestaltet sind, müssen sie auch individuell getestet werden. So hat etwa jeder Web-Shop andere Login-Verfahren oder Bestell- und Bezahl-Vorgänge. Aber auch die Anforderungen sind von Fall zu Fall verschieden. Es kann beispielsweise sein, dass nur ausgewählte Funktionalitäten getestet werden sollen – etwa die Newsletter-Einstiegsseite einer Webseite, deren Performance besonders kritisch ist.

Kombination verschiedener Software-Komponenten

In anderen Fällen muss dagegen vielleicht eine umfassende Prüfung in einzelne Tests für verschiedene Komponenten unterteilt werden, um aussagekräftige Ergebnisse zu erhalten. Die Verwaltung der Testpläne mit Hilfe eines Version Control Systems (VCS) stellt sicher, dass sich Änderungen jederzeit nachverfolgen lassen, und im Bedarfsfall jederzeit auf ältere Versionen zurückgegriffen werden kann. Arbeiten mehrere Personen an den Testplänen, lässt sich jederzeit nachvollziehen, welche Änderungen die Kollegen vorgenommen haben.

Nach der manuellen Erstellung des Plans kann der Test durchgängig automatisiert durchgeführt werden. Ermöglicht wird dies durch eine Kombination verschiedener Software-Komponenten. Die Steuerung der Tests erfolgt durch eine Metaways-Eigenentwicklung auf Basis des AWS CLI (Amazon Web Services Command Line Interface). Als Test-Tool kommt das Open-Source-Werkzeug Apache JMeter zum Einsatz. Ein Basis-Amazon-Machine-Image (AMI) wird aus dem VCS mit den nötigen dynamischen Informationen für den Start der Amazon-On-Demand-Instanzen versorgt. Somit verwenden die virtuellen Server in der Amazon-Cloud die konfigurierten Softwareversion von JMeter und der JMeter-Plugins. Die Parameter der Testpläne lassen sich an JMeter übergeben – beispielsweise wie viele Benutzer simuliert werden sollen und daraus abgeleitet die Zahl der Server, die in der Amazon-Wolke für den Test gestartet werden müssen.

Ergänzendes zum Thema
Die verwendeten Komponenten im Überblick

  • AWS CLI (Amazon Web Services Command Line Interface)
  • VCS (Version Control System)
  • Cloud Init
  • Apache JMeter
  • JMeter-Plugins
  • Amazon S3 (Simple Storage Service)
  • Aktuell 50 Instanzen bei Amazon EC2 (Elastic Compute Cloud)
  • Python Boto

(ID:42368197)