Performanz- und Lasttests Formale Methoden Fakultät für Wirtschaftswissenschaften Janina Berge E-Mail: j.berge@stud.hs-wismar.de Stephan Massmann E-Mail: s.massmann@stud.hs-wismar.de Wismar, den 25.11.2012
Performanz- und Lasttests
Motivation Performanz- und Lasttests Beispiel Online-Shop Beispiel Aldra Fenster und Türen GmbH Fazit
“Computer sind phantastisch: In wenigen Minuten können sie einen so großen Fehler produzieren, den Menschen nur in vielen Monaten machen können“ Das Beispiel spielt darauf an, dass wir inzwischen sehr stark abhängig sind, sei es nun in der Produktion – der Verwaltung etc.
Starke Abhängigkeit von Computern Produktion Organisation eines Unternehmens Beispiel Ariane5
5.500.000.000 € Entwicklungskosten 10 Jahre Entwicklungszeit 17 LOC
Softwarelebenszyklus Testen ist wichtig Grundlegender Testprozess V-Modell, Lebenszyklus Testaufwand Priorisierung Warum wird überhaupt getestet
Grundlegender Testprozess Planung und Steuerung Abschluss Analyse und Design Auswertung und Bericht Realisierung und Durchführung
Loading… please wait
Das Thema Performance wird dabei immer wichtiger Web-Anwendungen (unkontrollierte Anzahl Nutzer / schwer abschätzbar) Informationsflut Schnelle Märkte, man muss schnell Entscheidungen treffen (z.B. Mahnung schreiben, obwohl schon längst bezahlt)
Performanz- und Lasttests (1) 11 Last-, Performanz-, Stress- und Benchmark-Tests Unterscheidung funktionale und nicht-funktionale Anforderungen Software-Testmanagement Testfälle Testläufe Testszenarien Performance… „allgemeiner Ausdruck für die Leistung eines Systems, welches Hardware, Software oder auch nur ein einzelner Algorithmus sein kann.“ Performanztest = Messung der Verarbeitungsgeschwindigkeit bzw. Antwortszeit für bestimmte Anwendungsfälle Lasttest = Messung des Systemverhalten in Abhängigkeit steigender Last Lasttest Stresstest Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Performanz- und Lasttests (2) 12 Last-, Performanz-, Stress- und Benchmark-Tests Primäres Ziel von Softwaretests: Messen der Qualität des Softwaresystems Ziel von Performanztests: Ermittlung der Antwortzeit, Leistungsfähigkeit und Stabilität verschiedener Funktionen der Applikation (bzw. System) Ziel von Lasttests: Ermittlung von Performanz-Kennzahlen für Kapazitätsplanung Analyse folgender Komponenten: Anwendung, Betriebssystem, Applikationsserver, Datenbank sowie Netzwerk Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Performanz- und Lasttests (3) 13 Last-, Performanz-, Stress- und Benchmark-Tests Vorgehen: (1) Assessment - Auslastungsbeurteilung (2) Measurement - Benchmarking (3) Interpretation - Analyse (4) Optimierung – Prognose Identifikation und Beseitigung des Kollaps-Punkts Benchmarktest = Vergleichstest Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Performanz- und Lasttests (4) 14 Einordnung ins V-Modell Rechter Ast des V-Modell für die Integrations- und Testarbeiten Komponententest, Integrationstest, Systemtest und Abnahmetest Performanz- und Lasttest Systemtest Primäres Ziel des Systemtests: Verifikation des Systems gegen die Systemanforderungen Weiteres Ziele: System für Abnahme bereit? Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Fallbeispiel I: Online-Shop - Beispiel (Online-Shop vorstellen)
Testprozess
Testobjekt Risiko Tool Planung und Steuerung Abschluss Analyse und Design Auswertung und Bericht Realisierung und Durchführung Risiko Reaktionszeit des Angebots soll untersucht werden Risiko: Schlechte Antwortzeit Unzufriedenheit beim Kunden Tool: NeoLoad (NEOTYS) Testendekriterium: Ist erreicht, sobald das Verhalten beurteilt werden kann Tool
Logische Fälle Testbarkeit Testszenario Planung und Steuerung Abschluss Analyse und Design Auswertung und Bericht Realisierung und Durchführung Testbarkeit Logischer Testfall Ein User-Typ stöbert nur in dem Shop herum und liest Kundenbewertungen Ein User-Typ meldet sich mit seinen Daten an und verfasst Kundenrezensionen Testbarkeit Ist der Server über das Netzwerk erreichbar? Lässt sich der Online-Shop remote aufrufen? Testszenario Basierend auf den beiden Nutzertypen sollen sich eine unterschiedliche Anzahl von Nutzern auf dem System bewegen Testszenario
Konkreter Fall Durchführung Kriterium Ausprägung Anzahl der virtuellen Nutzer 2 Maximale Anzahl paralleler Nutzer 10 Minimale Anzahl paralleler Nutzer 1 Gesamttestdauer 3 Minuten Lastverteilung Wechsel zwischen Voll- und Niederlastintervall Dauer Volllastintervall 30 Sekunden Dauer Niederlastintervall Planung und Steuerung Abschluss Analyse und Design Auswertung und Bericht Realisierung und Durchführung Konkreter Fall Konkrete Testfälle Aus den logischen Fällen wurden konkrete Kriterien abgeleitet Aus diesen Kriterien entstand der konkrete Testfall bzw. das konkrete Testszenario Durchführung mit der Software Durchführung
Realisierung und Durchführung Planung und Steuerung Analyse und Design Realisierung und Durchführung Auswertung Protokollierung wurden von dem Tool übernommen 2,5 32,5 Zehnfache Nutzerzahl 13-fache Reaktionszeit Lüfter Geräusche am Laptop Testende Wurde erreich Reaktionszeit kann beurteilt werden Auswertung und Bericht Abschluss
Reine Antwortzeit zu ungenau Tests zu kurz Planung und Steuerung Analyse und Design Auswertung und Bericht Realisierung und Durchführung Reine Antwortzeit zu ungenau Tests zu kurz Hardware nicht repräsentativ … Reaktionszeit des Angebots soll untersucht werden Risiko: Schlechte Antwortzeit Unzufriedenheit beim Kunden Tool: NeoLoad (NEOTYS) Testendekriterium: Ist erreicht, sobald das Verhalten beurteilt werden kann Abschluss
Fallbeispiel II (1) Aldra Fenster und Türen GmbH 22 Aldra Fenster und Türen GmbH Unterstützung durch Infor: Herr Kuhlmann Baan ERP 5.0c, SUN-System, Oracle 10g, Testumgebung Dienstleister in Niederlande (Performanztests und Benchmarking) Ermittlung von Leistungsfaktoren für verschiedene Produktvarianten Nutzung des Tools Loadrunner Bestimmung der Leistungsgrenze Ableitung eines Sizing-Grades Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Fallbeispiel II (2) Aldra Fenster und Türen GmbH 23 Aldra Fenster und Türen GmbH Fragebogen für Kundenanforderungen Herr Kuhlmann: Bereich Datenbank, Netzwerk, Storage/Hardware, Betriebssystem und Applikation 1. Blick: Hardware und Betriebssystem 2. Blick: Datenbank 3. Blick: Applikation Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Fazit 24 Performanz- und Lasttest unerlässlich zur Bestimmung bzw. Messung von Softwarequalität Enger Zusammenhang Performanz- und Lasttest Nachteile: Definieren von nicht-funktionalen Anforderungen, Hoher Kostenfaktor für Testumgebung Vorteile: Aufdecken und Beheben von Fehlern Sicherheit in das Produkt Sinnvoll bei der Bewertung von ERP-System, Datenbanken sowie Web-Applikationen Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Vielen Dank für Ihre Aufmerksamkeit! 25 Vielen Dank für Ihre Aufmerksamkeit! Motivation Performanz- und Lasttests Fallbeispiel I Fallbeispiel II Fazit
Bildnachweise http://www.sxc.hu/photo/1397111 26 http://it-material.de/2009/07/anwendungen-in-der-automobilindustrie/ http://www.sxc.hu/photo/1117048 http://de.wikipedia.org/wiki/Ariane_5 http://www.dayer.de/bilder/galeriepics/ladebalken.gif http://www.google.de
Bildnachweise http://www.facebook.com 27 http://www.amazon.de https://twitter.com http://www.monitor.at/ausgaben/news_08_1/digital_info_growth1~fs.jpg http://t2.ftcdn.net/jpg/00/37/10/77/400_F_37107712_iPtmtb3qxOQbphrlCo17BDpnA5nIdwbB.jpg http://www.sxc.hu/photo/1198393
Bildnachweise 28 http://www.ultimateskillschallenge.com/Content/images/ShoppingCart.png http://www.sxc.hu/photo/708615 http://blog.extrasugarextrasalt.com/wp-content/uploads/2011/04/computer-hate.jpg http://upload.wikimedia.org/wikipedia/en/a/a6/Logo_NeoLoad_Transparent.png http://www.sxc.hu/photo/1078432 http://www.sxc.hu/photo/533025
Bildnachweise 29 http://www.sxc.hu/photo/1030728