Lesezeit
3 Minuten
Last- und Performance-Tests optimal durchführen
Ähnlich wie beim Tuning von Motoren kommt es bei Hardware-Installationen darauf an, dass die einzelnen Komponenten optimal aufeinander abgestimmt sind. Hier setzen Last- und Performance-Tests an: Sie prüfen, ob das Zusammenspiel unter den gewünschten Bedingungen klappt, decken frühzeitig Risiken auf und geben Aufschluss über vorhandene Kapazitäten sowie das Systemverhalten in kritischen Situationen. IT-Administrator erläutert, worauf es bei Last- und Performancetests ankommt.
Eine entscheidende Rolle spielen Testläufe beispielsweise vor Großveranstaltungen von internationalem Format. Sie sind fester Bestandteil der Projektplanung, etwa bei den Olympischen Spielen. Wenn im Juli in London der Startschuss fällt, will der Dienstleister Atos die IT-Infrastruktur für die Sommerspiele rund 200.000 Stunden lang getestet haben. Schon seit Anfang 2010 laufen die Vorbereitungen im Technology Lab auf Hochtouren, damit die mehr als 9.500 PCs und Laptops, etwa 900 Server und rund 1.000 Netzwerk- und Sicherheitskomponenten im Ernstfall reibungslos zusammenarbeiten.
Auch wenn die Dimensionen nicht immer so spektakulär sind: Last- und Performancetests begleiten viele IT-Projekte in Unternehmen aller Branchen. Abweichungen von den Systemanforderungen aufdecken, die Qualität sichern, Systemstörungen oder gar -ausfälle vermeiden, Performance- und Lastbedingungen festlegen – so lauten dabei die Ziele. Strukturierte und methodische Ansätze helfen, diese zu erreichen. Beteiligt sind dabei in der Regel Verantwortliche aus verschiedenen Zuständigkeitsbereichen, beispielsweise Administration, Hardware, Netzwerk, Security, Datenbanken oder Software.
Entgegen häufiger Annahmen ist es nicht die Aufgabe von Last- und Performance-Tests, Fehler im Code einer Applikation zu finden. Diese werden von Experten in der Regel schon frühzeitig im Rahmen so genannter technischer Reviews ausgemerzt. Dabei wird ein wesentliches Dokument, etwa ein Architekturentwurf, fachlich auf Übereinstimmung mit der Spezifikation und der Konformität der Anforderung geprüft. Zusätzlich sollten sachverständige Fachleute jedes Programm inspizieren, da sich insbesondere die Erfüllbarkeit und Adäquatheit von Annahmen und Ergebnissen häufig nicht testen lassen. Der Aufwand lohnt sich: Fehler können in dieser frühen Testphase meist bedeutend kostengünstiger behoben werden als während der Last- und Performancetests. Zudem kann ein späteres Beheben und erneutes Integrieren den Zeitplan deutlich ins Wanken bringen.
Unnötige Investitionen vermeiden
Auf den ersten Blick mag es den Anschein haben, Last- und Performancetests würden das Projektbudget nur belasten. Zum richtigen Zeitpunkt durchgeführt können solche Tests jedoch entscheidend dazu beitragen, den Return on Investment (ROI) der Hardware zu maximieren. Denn anhand ihrer Ergebnisse lassen sich Aussagen über die Dimensionierung von Kapazitäten treffen. So können Hardware-Komponenten wie etwa Server auf die maximale Geschwindigkeit und Leistung ausgerichtet werden, was zu einem optimale Preis-/Leistungsverhältnis beiträgt und möglicherweise weitere Investitionen vermeidet.
Insbesondere für Infrastrukturänderungen, Plattform-Migrationen, neue Releases, Upgrades auf der Applikationsebene oder die Einführung neuer Systeme und Software-Produkte empfehlen sich Last- und Performancetests. Auch bei Software-Änderungen, die Auswirkungen auf nichtfunktionale Eigenschaften, Performance, Effizienz, Verfügbarkeit, Zuverlässigkeit oder Robustheit haben, ist die Durchführung ratsam. Und schließlich sollte ein verändertes Mengengerüst, etwa wenn große Marketingkampagnen geplant oder Lastspitzen wie das Weihnachtsgeschäft absehbar sind, im Vorfeld getestet werden. Gleiches gilt für veränderte Geschäftsprozesse, die sich maßgeblich auf das Datenaufkommen auswirken, wie beispielsweise die Umstellung auf Online-Rechnungen.
Je geschäftskritischer das Projekt dabei, desto niedriger sollte das in Kauf genommene Risiko sein und umso ausführlicher sollte getestet werden. Selbst wenn der Fehler nicht bei den Hardware-Komponenten liegt, kann sich die Risikovorsorge auf diese beziehen – beispielsweise, indem eine erforderliche Hardware-Bestellung frühzeitig ausgelöst wird. Denn durch Überlast entsteht schnell ein Engpass. Je nach Vorhaben sind unterschiedliche Tests notwendig (siehe Tabelle "Testvarianten").

Open Source vs. kommerziell
Die Auswahl an Test-Werkzeugen ist groß. Den Administratoren stellt sich zunächst die Frage, ob sie Open Source oder kommerzielle Tools einsetzen möchten. Grundsätzlich lässt sich sagen: Die Open Source-Variante ist günstiger, weshalb auch viele Firmen auf diese Tools ausweichen. Allerdings erfordern sie deutlich mehr Arbeitsaufwand.
Open Source-Tools unterstützen die Anwender hauptsächlich im HTTP-Umfeld. Hier leisten sie gute Arbeit und können durchaus mit kommerziellen Tools konkurrieren. Doch auch beim Test eines Web Shops mit Open Source-Tools wird automatisch die Infrastruktur geprüft. Die durch das Last-Tool und die Last-Generatoren erzeugte Last muss über die Infrastruktur (Netzwerk, Router, Switche, Server) geleitet werden. Nachteilig sind die oft fehlende Unterstützung beim Monitoring der Serversysteme und der Datenbanken sowie die Einschränkung auf ein einziges Protokoll (HTTP). Auch lassen sich mit Open Source-Tools nicht alle Systeme zuverlässig testen. So sind etwa Lasttests für Citrix- oder SAP-Lösungen durch die fehlende Protokollunterstützung nicht möglich. Zudem sollten die Anwender berücksichtigen, dass sich die Sprachen zur Erstellung der Lasttest-Skripte an Programmierer wenden. Ein weiterer Schwachpunkt liegt im Reporting: Das Zusammenstellen und Auswerten der Informationen erfordert einen hohen manuellen Aufwand.


Andreas Schulz, Test and Acceptance Management Solution Manager bei Atos/dr/ln
Auch wenn die Dimensionen nicht immer so spektakulär sind: Last- und Performancetests begleiten viele IT-Projekte in Unternehmen aller Branchen. Abweichungen von den Systemanforderungen aufdecken, die Qualität sichern, Systemstörungen oder gar -ausfälle vermeiden, Performance- und Lastbedingungen festlegen – so lauten dabei die Ziele. Strukturierte und methodische Ansätze helfen, diese zu erreichen. Beteiligt sind dabei in der Regel Verantwortliche aus verschiedenen Zuständigkeitsbereichen, beispielsweise Administration, Hardware, Netzwerk, Security, Datenbanken oder Software.
Entgegen häufiger Annahmen ist es nicht die Aufgabe von Last- und Performance-Tests, Fehler im Code einer Applikation zu finden. Diese werden von Experten in der Regel schon frühzeitig im Rahmen so genannter technischer Reviews ausgemerzt. Dabei wird ein wesentliches Dokument, etwa ein Architekturentwurf, fachlich auf Übereinstimmung mit der Spezifikation und der Konformität der Anforderung geprüft. Zusätzlich sollten sachverständige Fachleute jedes Programm inspizieren, da sich insbesondere die Erfüllbarkeit und Adäquatheit von Annahmen und Ergebnissen häufig nicht testen lassen. Der Aufwand lohnt sich: Fehler können in dieser frühen Testphase meist bedeutend kostengünstiger behoben werden als während der Last- und Performancetests. Zudem kann ein späteres Beheben und erneutes Integrieren den Zeitplan deutlich ins Wanken bringen.
Unnötige Investitionen vermeiden
Auf den ersten Blick mag es den Anschein haben, Last- und Performancetests würden das Projektbudget nur belasten. Zum richtigen Zeitpunkt durchgeführt können solche Tests jedoch entscheidend dazu beitragen, den Return on Investment (ROI) der Hardware zu maximieren. Denn anhand ihrer Ergebnisse lassen sich Aussagen über die Dimensionierung von Kapazitäten treffen. So können Hardware-Komponenten wie etwa Server auf die maximale Geschwindigkeit und Leistung ausgerichtet werden, was zu einem optimale Preis-/Leistungsverhältnis beiträgt und möglicherweise weitere Investitionen vermeidet.
Insbesondere für Infrastrukturänderungen, Plattform-Migrationen, neue Releases, Upgrades auf der Applikationsebene oder die Einführung neuer Systeme und Software-Produkte empfehlen sich Last- und Performancetests. Auch bei Software-Änderungen, die Auswirkungen auf nichtfunktionale Eigenschaften, Performance, Effizienz, Verfügbarkeit, Zuverlässigkeit oder Robustheit haben, ist die Durchführung ratsam. Und schließlich sollte ein verändertes Mengengerüst, etwa wenn große Marketingkampagnen geplant oder Lastspitzen wie das Weihnachtsgeschäft absehbar sind, im Vorfeld getestet werden. Gleiches gilt für veränderte Geschäftsprozesse, die sich maßgeblich auf das Datenaufkommen auswirken, wie beispielsweise die Umstellung auf Online-Rechnungen.
Je geschäftskritischer das Projekt dabei, desto niedriger sollte das in Kauf genommene Risiko sein und umso ausführlicher sollte getestet werden. Selbst wenn der Fehler nicht bei den Hardware-Komponenten liegt, kann sich die Risikovorsorge auf diese beziehen – beispielsweise, indem eine erforderliche Hardware-Bestellung frühzeitig ausgelöst wird. Denn durch Überlast entsteht schnell ein Engpass. Je nach Vorhaben sind unterschiedliche Tests notwendig (siehe Tabelle "Testvarianten").
Open Source vs. kommerziell
Die Auswahl an Test-Werkzeugen ist groß. Den Administratoren stellt sich zunächst die Frage, ob sie Open Source oder kommerzielle Tools einsetzen möchten. Grundsätzlich lässt sich sagen: Die Open Source-Variante ist günstiger, weshalb auch viele Firmen auf diese Tools ausweichen. Allerdings erfordern sie deutlich mehr Arbeitsaufwand.
Open Source-Tools unterstützen die Anwender hauptsächlich im HTTP-Umfeld. Hier leisten sie gute Arbeit und können durchaus mit kommerziellen Tools konkurrieren. Doch auch beim Test eines Web Shops mit Open Source-Tools wird automatisch die Infrastruktur geprüft. Die durch das Last-Tool und die Last-Generatoren erzeugte Last muss über die Infrastruktur (Netzwerk, Router, Switche, Server) geleitet werden. Nachteilig sind die oft fehlende Unterstützung beim Monitoring der Serversysteme und der Datenbanken sowie die Einschränkung auf ein einziges Protokoll (HTTP). Auch lassen sich mit Open Source-Tools nicht alle Systeme zuverlässig testen. So sind etwa Lasttests für Citrix- oder SAP-Lösungen durch die fehlende Protokollunterstützung nicht möglich. Zudem sollten die Anwender berücksichtigen, dass sich die Sprachen zur Erstellung der Lasttest-Skripte an Programmierer wenden. Ein weiterer Schwachpunkt liegt im Reporting: Das Zusammenstellen und Auswerten der Informationen erfordert einen hohen manuellen Aufwand.
Seite 1 von 2 Nächste Seite>>
Andreas Schulz, Test and Acceptance Management Solution Manager bei Atos/dr/ln