Was sind Last und Performance Tests?
Bei den Last und Performance Tests handelt es sich um nicht-funktionale Softwaretests, die mit Hilfe von diversen Werkzeugen eine hohe, möglichst realistische Last auf der zu testenden System-Infrastruktur erzeugen, um damit das Verhalten des Systems unter diesen Bedingungen zu prüfen.
Was soll durch Last und Performance Tests aufgedeckt werden?
1. Latente, funktionale Fehler. Das sind die Fehler, die in den funktionalen Tests nicht in Erscheinung treten z.B. fehlerhafte Pfade im Programm, die erst bei höherer Last betreten werden.
2. Noch nicht entdeckte funktionalen Fehler, weil z.B. nicht alle Grenzbereiche getestet wurden.
3. Eventuelle Schwächen im Datenmodell: große Tabellen, nicht ausbalancierte Indizies oder gar keine Indizies, ungünstige Tabellen Joins usw.
4. Eventuelle Schwächen in der Architektur, z.B. Deadlocks, zu große Transaktionen im Code.
5. Nachweis über die Erfüllung von SLA’s, hier liegt der Fokus auf Performance Tests mit definierter Grundlast und definierter Anzahl der zu testenden Transaktionen, um die Antwortzeiten einzelner Transaktionen zu messen und gegen Service Level Agreements (SLA’s) zu prüfen.
6. Nachweis über die Erfüllung von nicht-funktionalen Requirements (NFR’s) mit dem Fokus auf Last Test der gesamten Prozesskette unter unterschiedlichen Bedingungen.
7. Stabilität und Zuverlässigkeit der Anwendung unter lang andauernder Last mit wechselnden Spitzen.
8. Skalierbarkeit der Anwendung, Effizienz und Ressourcen Verbrauch