Real Application Testing – Teil 6 von 7: Schlussfolgerung, Vorteile und nützliche Tipps zum Real Application Testing

von Torsten Zimmermann (Kommentare: 0)

Im Folgenden finden Sie nun im 6. Teil die Schlussfolgerungen unseres Autors, wie Real Application Testing in der Praxis wichtige Informationen über die Qualität von Datenbank- und Webanwendungen sowie Webservices liefert, um richtige Entscheidungen zur Produktivsetzung zu treffen.

Schlussfolgerungensoftware-testing

Die Gewährleistung von Qualität und Leistung auf Unternehmensanwendungen erfordert die Etablierung eines umfassenden Qualitätsmanagements. Dies heißt auch umfassende Prüfungen auf allen Ebenen vor der eigentlichen Überführung in die Produktion vorzunehmen.

Hierbei sind Anwendungs- und Infrastrukturtests sowohl bei Neuentwicklungen wie auch bei Updates durchzuführen. Umfassende Tests auf hohem Niveau müssen hierbei auch die realen Betriebsbedingungen berücksichtigen können, damit deren Aussagen eine gute Basis für die Entscheidung darstellen, ob eine Anwendung für die Produktion freigegeben werden kann.

Und um die Effizienz zu maximieren, ist es wichtig, auf ein effektives Test Framework zurückgreifen zu können: Hierüber lassen sich Tests sinnvoll planen, verwalten und auch automatisiert ausführen.

Der Oracle Enterprise Manager bietet ein umfassendes Set von Qualitätsmanagement Lösungen, wie die Application Testing Suite, das Real Application Testing und das Data Masking Pack.

Diese Oracle Test Tools sind vor allem auf das Oracle Datenbank Umfeld abgestimmt und liefern wichtige Informationen, welche mit anderen Testwerkzeugen entweder gar nicht oder nur mit erheblich höherem Aufwand zu ermitteln wären. Ferner ermöglichen die Werkzeuge, qualitativ hochwertige und sichere Tests mit geringen Umgebungsrisiko beziehungsweise geringen Risiko ungewollter Änderungen bei den Anwendungen.

Daher sollten sich Entwickler und Testingenieure mit den Oracle Test Tools vertraut machen, sofern Oracle Datenbanken in der betreffenden Umgebung eingesetzt werden.

Die Vorteile von Real Application Testing

Im Vergleich zu klassischen Software Tests bietet Real Application Testing folgende Vorteile, wie diese in mehreren IT-Projekten bereits erkannt wurden:

  • Bei der Verwendung von Workload Daten aus der Produktion können während der Tests bereits produktionsbezogene Probleme identifiziert und korrigiert werden, welche ansonsten erst in der Produktion zu erkennen wären.
  • Mithilfe von Real Application Testing verringert sich der Anteil von „Feuerwehreinsätzen“ für Datenbankadministratoren bei Problemen in der Produktion. Damit können diese Ressourcen auf weitere proaktive und strategische Aufgaben ausgerichtet werden.
  • Die notwendige Testinfrastruktur kann mit Real Application Testing kleiner ausfallen, als sonst üblich. Das Datenbase Replay benötigt nicht die Middle und die Webserver Tier. Dies reduziert den Verwaltungs- und Pflegeaufwand für die betreffende Testumgebung und die Aufwände für die Testvorbereitung.
  • Mithilfe von Datenbase Replay müssen zur Bewertung von Datenbank- und Umgebungsqualität keine funktionalen Kenntnisse über die Anwendung erworben noch umfangreiche Testskripts entwickelt werden. In vergleichsweiser kurzer Zeit ist mit wenigen Klicks die volle Produktionslast auf der Testumgebung verfügbar. Hierauf können die Tests und Analysen mithilfe der betreffenden Werkzeuge - wie dem SPA - ausgeführt werden. Durch die reduzierten Zeiten im Bereich der Testvorbereitung und Testspezifikation verkürzt sich die Dauer der Testzyklen.
  • Der neue Testansatz sorgt für einen reibungslosen „Go-live“ in die Produktion, ohne auf Überraschungen bezüglich unerkannter Schwächen in der Produktion zu stoßen.

Nützliche Hinweise

  • Real Application Testing reduziert den Zeitbedarf für die Tests. Trotzdem ist es aber wichtig, einen Test-Projektplan und ein Test-Konzept zu erstellen, in dem Umfang, Ziele, Einschränkungen und Erfolgskriterien klar definiert sind.
  • Immer stets die aktuellen Patches und aktuelle Version zu Real Application Testing in beiden Umgebungen (in welcher aufgezeichnet und in welcher abgespielt wird) verwenden. Die Patch-Informationen finden sich im My Oracle Support Hinweis #560977.1.
  • Immer zuerst den Workload Analyzer vor der eigentlichen Wiedergabe ausführen, um etwaige Probleme bezüglich nicht unterstützter Workloads oder anderer Probleme zu erkennen.
  • Die Prüfungen stets mit dem SQL Performance Analyzer beginnen, um ein Bild über etwaige Performanceprobleme zu erhalten.
  • Zunächst sind alle bekannten Performanceprobleme zu lösen, bevor mit dem Database Replay fortgefahren wird.
  • Das Aufzeichnen der SQL Tuning Sets (STS) sollte im gleichen Zeitraum erfolgen wie das Database Replay.
  • Alle kritischen Workload Bereiche sind zu identifizieren. Für jeden Bereich sollte eine eigene Aufzeichnung erstellt werden.
  • Das Aufzeichnen der Workloads sollte nicht mit der Lastspitze beginnen, sondern bereits einige Zeit davor starten und bis über die Lastspitze hinweg aufzuzeichnen.
  • Wenn Batchläufe ausgeführt werden, so ist die Aufzeichnung des Workloads (ähnlich wie bei Punkt 8) bereits einige Zeit davor zu starten.
  • Erst sollte man mit kleineren Capture Perioden wie beispielsweise 30 Minuten bis 1 Stunde beginnen. Sobald alle Probleme gelöst worden sind, kann der Aufzeichnungszeitraum auf längere Zeiten ausgedehnt werden.
  • Lange Aufzeichnungszeiträume von mehreren Tagen sollten vermieden werden. Es wird schwierig sein, die Aufzeichnungsprozesse vollständig zu überwachen. Ferner besteht die Gefahr, dass selbst bei einer Fehlereintrittswahrscheinlichkeit von 0,1% - aufgrund der riesigen Datenmengen - der Wiedergabeprozess abbricht.
  • Die Wiedergabe von Workloads sollte nicht auf kleineren Systemen abgespielt werden, als diese aufgezeichnet wurden. Sollten die Workloads auf kleineren Systemen abgespielt werden, so sind entsprechende Workload Filter zu definieren, um die Last auf dem Zielsystem zu reduzieren.
  • Zwischen den Database Replays sollten Datenbank Flashbacks als Restore Methode angewendet werden.
  • Neben den Standard SPA und Database Replay Reports sollten auch eigene Berichte entwickelt werden, um spezielle Ergebnisinformationen aufzubereiten, um die definierten Testziele besser zu unterstützen.

Zurück

Einen Kommentar schreiben